added a bunch of stuff for the framework