Using existential operator for userName and repoName values

- TypeError: 'undefined' is not an object (evaluating
  '$(this.options.userNameInput).val().trim') error was coming because
  .preview_user_name and preview_repo_name elements were not present
  on all pages.
- Using existential operator, suppresses this error
Merge pull request #158 from prathamesh-sonpatki/fix-js-error

Using existential operator for userName and repoName values
Organize Gemfile
Removed attr_protected from Gemfile and remove attr_accessible and
attr_protected from code
Added private methods to whitelist attributes for mass-assignments and cleaned up model code about attr_accessible and attr_protected
Unicorn should be present in dev as well as prod mode. Otherwise foreman won't work.