Updated unit tests for proper build up and pull down so they can be run out of order, started to add test coverage for event emitting and starting to move binding stuff out of core into it's own plugin so that a custom build can contain less code if not being used with binding