Increase cache coherency.

Mainly achieved by allocating components in contiguous memory blocks.
This is a breaking change, thus the major version bump.
Fix visibility issue with gcc.
Removed Manager. Add EntityX class. Largely eradicate use of shared_ptr.
Use raw pointers for components, allocated from pools.
Update README for 1.0.0.
Switch to Catch testing framework.
Use TEST_CASE_METHOD rather than SECTION.
Wrap component access in a ComponentHandle.
Use vector rather than unordered_map for event dispatching.
Doc updates.
Don't include entityx/Manager.h - it is no longer used.
Verify destroyed event count is correct.
Add -g to release builds.
1.0.0alpha1 release.
Merge branch 'master' of github.com:alecthomas/entityx

Conflicts:
	entityx/System.h