Add drag and drop config import closes #11004

As requested by @vincent3569 this PR allows user to import config.json settings via a drag and drop import. Fixes #11004.
Attached are some screenshots of the UI changes.

Drop target
![screen shot 2014-06-11 at 10 49 26](https://cloud.githubusercontent.com/assets/678372/3242850/56e89090-f150-11e3-8808-23f6bd7dd71b.jpg)

Error on uploading invalid file
![screen shot 2014-06-11 at 10 49 47](https://cloud.githubusercontent.com/assets/678372/3242852/58e3b532-f150-11e3-854c-3152b2db44b6.jpg)

Success message
![screen shot 2014-06-11 at 11 04 36](https://cloud.githubusercontent.com/assets/678372/3242853/5bcae874-f150-11e3-9063-153df42be53b.jpg)

Side nav
![screen shot 2014-06-11 at 11 04 53](https://cloud.githubusercontent.com/assets/678372/3242855/5ed4bb1c-f150-11e3-97bb-808aa150d4c1.jpg)

From previous experience doing it that way had browser support issues. Quick google found this can be confirmed at least for old versions of Firefox. http://stackoverflow.com/questions/7742278/workaround-for-file-input-label-click-firefox
This jsfiddle shows it works in modern chrome and firefox though. http://jsfiddle.net/thomaswelton/em7m9/

Not sure what you want to do about it. Will leave as is for now see what @mdo or @fat says during the JS code review.