Fix for IE8 compatibility

Instead of using Object.create, just shuffle the prototypes around so that we don't need to include es5-sham.