File structure for custom modules in Drupal 7
Keeping your modules folder clear is important part of development. This is my common structure:


contrib — modules from Drupal.org
custom — modules developed for this project
features — exported features for Features-driven development
unstable — sandbox, forked, unstable, patched modules


Here are some examples how to organize patches/forks:


Drupal Boilerplate from Lullabot
A sustainable development workflow for patching drupal from Jennifer Lea Lampton
Drush Make workflow from @Letharion
Managing patches &amp; getting your drupal patch accepted from Greg Knaddison



  But how to install a newly downloaded module in `sites/all/modules/contrib from admin-panel.


Use Drush please.

drush dl views rules # will download Views and Rules into sites/all/modules/contrib automatically if contrib folder exists.


You also can specify --destination where to download project.