Cut BanditAlgo and Experiment

Since about 2 years ago, the `fmin` function has proved a practical and intuitive interface. It replaces older classes such as `Experiment` and `BanditAlgo` as well as implementations of random search and TPE that are based on BanditAlgo.

Issues #153 and #155 seemed hard to resolve without significant work to those old classes, so I started this branch to upgrade the test suite and delete those old classes.

This is going to be a pretty big PR by the end of it but hopefully the test coverage will be enough to avoid breakage.

I plan to squash these commits and rebase them on master before committing, so no one freak out because the commits on this branch are so bad.