Transform_value should convert values to 'unicode' by default, not 'str'.
Use the 'fields' setter method to initialize self._fields in OplogThread.
Formatters should not stringify datetimes.
Rewrite how and where DocManagers are created.
This provides a cleaner Python API for creating a Connector, as well as shortening the syntax for --doc-managers on the command-line. This introduces some backwards-breaking changes:

- There is no more camel-cased --docManager option. This is superseded by --doc-managers or -d.
- The doc_manager keyword argument has been renamed to doc_managers in the constructors for Connector and OplogThread.
- doc_managers takes a list of DocManager instances, rather than a list of strings.
- Remove the u_key and target_url options from the Connector constructor, as these are now obsolete.
- --doc-managers takes a comma-separated list of DocManager module names, e.g. 'elastic_doc_manager'.
Update CHANGELOG.rst to reflect changes made to --doc-managers.
Update version in setup.py to 2.0.dev0.
Keep namespace and timestamp metadata in a separate Elasticsearch index.
Yield both document and meta-document actions in the same generator for bulk_upsert into Elasticsearch.
Remove redundant _id in meta document for regular upsert using the Elastic DocManager.
# This is a combination of 19 commits.
# The first commit's message is:
initial work on config file

# This is the 2nd commit message:

added validation method, created pure json config

# This is the 3rd commit message:

integrated with connector.py

# This is the 4th commit message:

fixes and tests for configuration

# This is the 5th commit message:

small typos

# This is the 6th commit message:

more small fixes

# This is the 7th commit message:

style corrections

# This is the 8th commit message:

incomplete

# This is the 9th commit message:

yeah passed all tests

# This is the 10th commit message:

little change

# This is the 11th commit message:

more rewriting

# This is the 12th commit message:

verbose to integer, unique key and auto commit interval in document

# This is the 13th commit message:

more small

# This is the 14th commit message:

self code review

# This is the 15th commit message:

almost

# This is the 16th commit message:

passed tests

# This is the 17th commit message:

added type checking, python3 suport

# This is the 18th commit message:

simple cleanup

# This is the 19th commit message:

final
almost done with config file
Merge remote-tracking branch 'upstream/2.0-dev' into config

Conflicts:
	mongo_connector/compat.py
	mongo_connector/connector.py
Doc manager imports moved to apply_doc_manager
moved option.set_type into constructor
Merge branch 'config' into daemon

Conflicts:
	config.json
	mongo_connector/compat.py
	mongo_connector/config.py
	mongo_connector/connector.py
	mongo_connector/errors.py
	tests/test_config.py