#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.
pipeline instance api
stage instance api
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.
Form formatting and updated localization labels. Flash error message styling
delegated writing and validating tasks to Writer and Validator from the Manager, respectively; first step to create a wrapper class around FileUtils - it captures .copyFile method only, for now.
revert the .gitignore change
show an error message when no file is selected for upload
Merge pull request #663 from arvindsv/fix_dashboard_json_can_administer_and_locking

#371 - Fix dashboard JSON - can administer and locking