Change host and worker_name column types for sqlalchemy.

This change fixes a bug where you cannot use a text/blob type for constraints
with mysql as the db server.
Merge pull request #30 from ameade/worker-db-columns

Change host and worker_name column types for sqlalchemy.
Pagination for schedules

Added the pagination capability to the v1/schedules api to support
limit and markers. It has limit_param_default and api_limit_max config
params to enable constrained limiting. Also, added unit tests for the
changes made.

Some important changes to be noticed:-
--------------------------------------
1. simple db now does not generate id-s for schedules
2. id-s are being provided into the fixtures for the tests to be aware
   of them
3. validation of limit does not accept '0' as a limit (unlike glance)
4. schedules_mutate list is being used as a sorted one in the
   pagination module (does not add sorting feature but sorts the list
   chronologically using 'id' as a key)
5. there are 4 UUIDs set as default in the test_schedules module, and
   UUID_test can be set a custom UUID for tests that need it
Implements pagination for workers API
Implements pagination for jobs API
Implements functional tests for pagination

Added the functional tests for pagination of schedules API, workers API
and jobs API
Refactors pagination code based on first comments

Made some changes in the api to avoid code duplication. Client is
updated in couple of places to work the new changes.
Implements schedules_links in the pagination

Added links including the "rel" marker for "next" which simplifies
the code in the scheduler to be able to read the list of schedules.
Implements final refactoring of the code.
Merge pull request #38 from komawar/pagination-final-diff-limit-test

Pagination
Merge pull request #33 from esheffield/worker

Initial cut of snapshot worker processor.
Merged from master. Fixed conflicts and style violations