Updating internal SQL to be more database agnostic and work in both MySQl and Postgresql

Part 1 - still a bit more to do and needs further testing
more sql updates
Updated migrations for index name, default value. Added Capistrano (2.15.5) to gem file
updating comments
added default value for run_at - somehow this was missing following switch to postgres
set default retrieved_at value on retrieval_status - also missing following switch to postgres
increase target_url field length (Facebook source can have some long urls)
bug fixes to support postgres db
Merge remote-tracking branch 'cottagelabs/master' into feature/pg

Conflicts:
	Gemfile.lock
	app/controllers/admin/articles_controller.rb
ALM-633 some tweaks to the Postgres changes
ALM-622 correctly parse new API response
ALM-632 use database truncation with rspec
ALM-593 the first user we create should use the api key from the config file
ALM-633 use Time.zone.now instead of Time.now for consistency
updated gems
ALM-628 adapt basic auth in rspec tests to typhoeus
ALM-618 renamed article identifier columns to pmid, pmcid, mendeley_uuid
use Nokogiri for all XML parsing instead of using Nori gem in tests
ALM-628 adapt to small response differences with typhoeus
increased timeout value for delayed_job to 90 min