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
trying to get Heroku working
heroku setup script
add params to db/seed.rb; provide better heroku login detection
Merge remote-tracking branch 'origin/master' into heroku
trying a custom buildpack to customize Procfile
Gemfile trickery for Heroku
try again
exit when username is wrong
allow email agents to accept an optional "recipients" list to override the account default
allow the PostAgent to accept interpolation in post_url