Remove multi-threaded auto-commit. Use process instead

This is done using shared memory objects provided by multiprocessing.
Also fix a bug in auto-commit for - auto_commit_every_n
Merge branch 'partition' into mpcommit
Merge branch 'master' into mpcommit
Merge branch 'master' into mpcommit

Conflicts:
	kafka/consumer.py
	kafka/util.py
Merge branch 'master' into mpcommit

Conflicts:
	kafka/conn.py
	kafka/util.py
Avoid doing an un-necessary commit on stop()
Merge branch 'mpcommit' into windows
re-init client after a fork