Add peewee support

It was designed around my branch of peewee https://github.com/cam-stitt/peewee. I have a pull request waiting with my minor changes so hopefully it will be upstream soon. I have not yet completed any documentation regarding the implementation, it was merely a first attempt at getting one working for my own project.

Edit: My changes have been merged into master for peewee. All tests now pass on master.