Add jasmine via official jasmine gem

* Run `rails g jasmine:install`
* Configure to avoid default phantomjs download
Include jasmine:ci in default task

* Run javascript tests by default
Include govuk-admin-template as jasmine src file

* Required for bootstrap and jquery libraries to be present
Create rudimentary chosen module

* Start chosen select drop downs based on data attributes rather than
CSS classes
Merge pull request #244 from alphagov/jasmine

Add Jasmine for Javascript testing
API user list, create, and edit actions

1. separate ApiUser class allows us to configure
   cancan abilities better.
2. re-using suspension actions, just redirecting
   back to the correct edit page.
3. added the table name to Doorkeeper::Application
   default_scope otherwise there's an abiguous name
   column during a table join.
4. hiding "Has access?" column in the permissions
   grid on api user's edit page, in favor of the
   Tokens table and assigning 'signin' permission
   by default whenever token is generated for an
   application.
5. templates by Paul H.
Manage API user access tokens

1. using zeroclipboard library for 'Copy to clipboard'
   button for access tokens.
2. fixed n+1 issues in UserPermissionsControllerMethods
   by performing some grouping operations in Ruby.
Integration test for managing API users