Refactored the object type system.
Removed some unused classes.
Fixed test cases.
Fixed a crash when moving more than one entity brush.
Don't skip mouse events in tool box.
Replaced some intersection methods with visitors.
Fix a crash when undoing an object removal.
Fixed a bug in brush / brush intersection implementation.
Don't recurse when adding objects to the map renderer.
More accurate texture name in face attribs editor when texture is not found.
Fixed some rendering issues with partially selected brushes.
Added Group class.
Renamed ObjectQuery to ConstObjectVisitor
Merge commit '0832f31a641c7e9cc15c82c46360a15c69c2e517' into NewArchitecture

Conflicts:
	common/src/Controller/AddRemoveObjectsCommand.cpp
	common/src/Controller/AddRemoveObjectsCommand.h
	common/src/View/MapDocument.cpp
Fixed select all command.
Renamed Brush::parent() to Brush::entity().