Configurable storage

Move the filesystem-specific parts of state loading/saving into a
separate class - FileStorage - which can be swapped out for anything
which implements the primitives `read(name)` and `write(name)`, both of
which return an IO-like object (for reading or writing, respectively).
Merge branch 'configurable-storage' of git://github.com/aanand/twitterbot into aanand-configurable-storage

Conflicts:
	twitterbot/bot.py
Merge branch 'aanand-configurable-storage'
Merge branch 'master' of https://github.com/thricedotted/twitterbot