Best way or plugin to secure WP-ADMIN


I want to achieve the below:

1. Excluding Selected Roles/Users no body else can access wp-admin

2. I want to rename the WP-ADMIN page without renaming the directory(lets say i can call – controlpanel)

3. I have some plugins which mights be calling wp-admin link in them. So I want a redirect when plugins call wp-admin so that the link is masked and redirected to custom link (controlpanel)

4. Login should automatically take to instead of mysite.comwp-admin

Is there a plug-in which will help me achieve these. Or can I achieve this purely through .htaccess