Add omniauth to let huginn consume oauth endpoints

Created a service model which stores external account information.
Created a service controller which kicks off the oauth process and lets
the user manage their external accounts.
Oauthable concern connects a agent to a service and adds a drop down to the
agents edit page.
Added a migration which converts the existing twitter agents to use the
new service model.
Update new agent form to include the service dropdown

When creating a new agent the service dropdown needs to be updated after
switing the agent type. Rendering the whole form and cherry picking just
the needed services dropdown seemed the easierst solution.
Added documentation about how to set up OAuth applications
User#available_services make sure to escape the parameters, added
missing link to the wiki
Fixed services migration, disabled agents after deletion of a service
Skip validations in the oauth migration

Also enforced the presence of needed attributes of the services table on
the database level
OAuthable concern now uses class instance variables
Merge remote-tracking branch 'huginn/master' into omniauth
Fixed the specs
Merge remote-tracking branch 'huginn/master' into omniauth

Conflicts:
	app/models/agents/basecamp_agent.rb
	app/models/user.rb
	db/schema.rb
	spec/fixtures/agents.yml
Merge branch 'master' into omniauth

Conflicts:
	Gemfile.lock
	app/controllers/agents_controller.rb
Import scenarios with agents which need a service
Renamed 37signals environmental variable to not start with numbers
Merge branch 'omniauth' of https://github.com/dsander/huginn into dsander-omniauth

Conflicts:
	Gemfile.lock
move test ENV variables
Sane docker file optimized for quick rebuilds
Merge pull request #441 from andrewcurioso/docker

Docker image out of date
TwitterStream bugfixes

* do not run disabled `TwitterStreamAgents`
* calling `sleep` within the EM loop blocks the EM thread and thereby
  blocks the reload callback and proper shutdown of the threaded worker
* stopping the EM loop from outside of the `EM.run` blocks does not seem
  to work reliably, using a timer and checking if shutdown was requested
  works as expected
* removed unnecessary sleep at the end of the EM loop which would delay
  the shutdown of the thread
Merge pull request #442 from dsander/twitterstream-fixes

TwitterStream bugfixes
method: post was required for nav link to work