Supported more Salesforce databases in an application.

- The setting SALESFORCE_DB_ALIAS is the name of the primary Salesforce
  database. It is possible to completely change the precedence of databases
  and 'salesforce' can be the name of secondary SF database.
- The SF database can be selected by `.objects.using('some_sf').filter()`
  and by `.save(using='...')` for saving new objects.
- Foreign keys correctly relate to objects in the same database.
- An obsoleted auth session causes reauthentification of the right database.
- Some some features can be tested only if more Salesforce databases are
  defined in DATABASES settings.
- Modified auth.authenticate parameters so that the old usage should raise
  a clear exception. (though a compatible solution was functional, but it was
  less readable.)
Simplified query.py
Support for allow_migrate in Django 1.7 to ignore some commands with SF.
Fixed inspectdb default ForeignKey to "on_delete=DO_NOTHING"
Moved print output to stderr, due to inspectbd
Fixed comments and whitespace and typography.
Removed an old function unused for two years.
Simplified SalesforceModel to not switch classes.

Solved by backporting "with_metaclass" from Django 1.7 to Django 1.4
Improved foreign key parameters to work usually also without db_column.

The suffix "Id" is automatically added to the foreign key name if no
 'db_column' is specified.
Support for tests with SQLite
Fixed setup #4: Include package data, but don't make Salesforce a setuptools plugin.
Fixed deprecation warning, cleaned code readability to DJANGO_*_PLUS
Fixed SF router an manager to be possible run tests in the memory

with SALESFORCE_DB_ALIAS='default' and still explicitely select SF
record set by '.using(db).' or even SF manager by '.db_manager(db).'.
Updated tests to demonstrate running with sqlite3 backend.

These tests can be fixed by modified example/models.py: 'managed=True'
or 'auto_now=True'.
One half of tests is skipped because they strongly depend on SF.
Some are reported as skipped in the half of test, though the first part passed.
Fixed code and tests that relate datetime to work also for sqlite3
Refactored simple code to be DRY
Improved test to demonstate SF managers with sqlite after db_manager
Updated docs
Fixed requirements to Django>=1.4.2
Merge pull request #59 from hynekcer/fix-setup

Fixed setup #4: Include package data without breaking into setuptools