Replace `find_by_provider_and_uid` with `find_by_oauth_credentials`

We used dynamic method based on provider and uid attributes names. This was ok
as long as user either used ActiveRecord (where the method was generated
dynamically) or used other ORMs, but didn't change these fields' names, because
then the method wasn't available in model (as other ORMs don't generate methods
dynamically, and the one we wrote was called specifically
`find_by_provider_and_uid`).

Fixes #529
fix finding provider for datamapper
Merge pull request #558 from arnvald/fix_find_by_provider_and_uid_issues

Replace `find_by_provider_and_uid` with `find_by_oauth_credentials`
Store Sorcery::VERSION in special file
Merge pull request #559 from NoamB/version-file

Store Sorcery::VERSION in special file
small documentation fix

version 0.8.6 has been released
Merge pull request #560 from jhilden/patch-1

small documentation fix
Fix RSpec configuration documentation

In order to be properly loaded, the provided type cannot be an array.
Merge pull request #561 from namxam/fix-rspec-documentation

Fix RSpec configuration documentation
update changelog
Fixed warning (#563) and better doc for `reset_password_time_between_emails`
extract controller files to separate classes
Merge pull request #564 from NoamB/fix-seconds-warning

Fixed warning (#563)
Extract defining fields to adapters

Currently in every single submodule that requires additional fields in model,
we've got a conditional block for each ORM. To reduce code duplication,
a `define_field` method was added to each of ORM adapters. Now we can run it no
matter what ORM is used, and adapter will handle it.
Extract defining callbacks to adapters

Just like in case of fields, defining callbacks should be done the same way for
all adapters. This version includes basic definition that handles all currently
used in Sorcery cases
Merge pull request #567 from arnvald/extract_config_classes

extract controller files to separate classes
Fix issues with define_callback in DataMapper
Rename define_field and define_callback

As pointed by @kirs, these names are quite general. To avoid potential problems
they were renamed to define_sorcery_field and define_sorcery_callback
Merge pull request #568 from arnvald/extract_define_field_method

Move defining fields to adapters
replace autoloads with requires in sorcery.rb