Fixed IPAdress error message.
Catch invalid input early on in AsyncLogClient::GetEntries.
Moved apt-get python packages to pip (travis).
Merge branch 'master' into super_duper

Conflicts:
	.travis.yml
	cpp/client/async_log_client.cc
Add a libevent::Base::Run() method.

This is similar to ThreadPool::Add(), but runs the closure through libevent,
ensuring serialization with other libevent callbacks.
Read the latest STH even if there are no entries in FileDB.
Make SQLiteDB<>::db_ const.

For my own peace of mind...
Make the SQLiteDB<> class threadsafe.
Make a few pointer members of FileDB<> const.

Also check them for null.
Make the FileDB<> class threadsafe.
Rename FilesystemOps to pluralize it correctly.
Put the FilesystemOps classes in the namespace.
Use "override" for the FilesystemOps child classes.

Also a few other minor cleanups.
Make the FilesystemOps interface take std::string.

This makes it certain we don't get a stray null.
Fix the style of the filesystem_ops.h header guard.
Implement FailingFilesystemOps in terms of the real one.
Add a FakeEtcdClient useful for testing.
Merge pull request #264 from AlCutter/fake_etcd

Add a FakeEtcdClient useful for testing.