Engine object as parameter

This follows from #38, removing spritesmith engines from dependencies in favor of passing in an instance of the preferred engine.

I'm getting all tests passing except canvassmith, which is failing with the message "Error: Image given has not completed loading". This failure happens for me with the code from develop as well, so it appears to have nothing to do with these commits.