what i think you should do :
-allow user to login and limit the access to wp-admin
-in theme you can use author.php and check for role
what you will use :
*user role editor to create a new role and create custom capabilities
*add_filter on authentication to wp-admin
*and redirect the logged in user to login page that you have to create
all the above can be done using plugin for membership like members