Membership Management Customization: Assessment Sign up
There is an approach whereby you set up a Membership Status of 'waiting approval' that kicks in at 'join date' and puts the membership in to a non-current status (overridden) - there are some old threads around that may give more pointers eg


https://forum.civicrm.org/index.php%3Ftopic=25771.0.html
membership approval
https://forum.civicrm.org/index.php%3Ftopic=33584.0.html


IN terms of providing documentation, this can be done via a CiviCRM Profile