Bring master up to speed with 0.9.x

Hot on the heels of https://github.com/graphite-project/carbon/issues/312 is this PR which re-integrates 0.9.x into master. There were a few merge conflicts, but far less than I'd feared.

It would rock if someone else could take this branch and test it out some more. My initial tests (start a few caches, write data, verify data) all pass, but are rather simplistic.
@brutasse - Yup. Totally agree. Are you OK with this as is for now? Once we have `master` back stablish-ish, then I'd be happy to go deep into testing. I can add the setup.cfg changes to this if you think its a clear win.