#371 - Add can_administer to JSON.

Indicates which pipelines user has administration access to.
#371 - can_administer, settings_path to pipeline.

can_administer and settings_path in the JSON were at pipeline instance
level. But, ability to administer and the path for the settings of the
pipeline are not for the instance. They're for the whole pipeline. So,
moving that out.
#371 - Add support for pipeline lock data.

Provides two new bits of information:

1. is_locked: Is the pipeline currently locked?

2. unlock operation: If it is locked, and can be unlocked by
   the user, then an unlock operation will be present.
#000 - Fix for null message in health state.

Especially in cases of plugins, if the return value is null, then
ServerHealthState constructor fails.
Post-commit hook for mercurial

Follows along the same line as git. Moved GitUrlMatchers to be generic enough to be used by mercurial as well.
#000 - Missed writing test.
Merge pull request #794 from arvindsv/ruckc-master_with_debug_logs_in_high_freq_access_code

Better exception logs with debug logs in frequently accessed code
Merge pull request #767 from arvindsv/fix_health_state_null

#000 - Fix for null message in health state.
Merge pull request #781 from sachinsudheendra/mercurial_post_commit_hook

Post-commit hook for mercurial
Merge pull request #663 from arvindsv/fix_dashboard_json_can_administer_and_locking

#371 - Fix dashboard JSON - can administer and locking
form to upload a plugin jar in plugin tab
rails now delegates uploaded file to plugin manager
manager uploads the jar plugin to external directory
added test for view plugins
manager now returns a response; display a flash success message on the UI
Upload plugin form with localized labels, modified vendor output in gitignore
Removed duplicate form
Renamed plugin-file to plugin id for form
Validating jar file for plugin upload
Fixed the failing unit test. Notice that I've introduced a protected
method for better test coverage; a better way is to have a wrapper class
around the fileUtil so we can test the shit out of every
exception we'd like, but that'd a good follow-up refactoring commit.