Acrobot

made bot creation much more modular and pythonic. this lets us easily create bot functions, like Acrotopia or a markov chain, that can have their own entire class or file. its also just more understandable and more editable. the purpose of using **kwargs like i do is to allow us to pass init arguments in without breaking subclassing. handy!