Add Engine class and a basic test to ensure things are working