Add POC code for showing datatype usages
Refactor all the things

* Create interface to define Relations/Usages
* Create basic stub implementations for testing
* Add toolbar button dynamically on relevant pages
* Add .Core project
Add page for displaying usages, wire up to render tables dynamically
Misc cleanup

* Fix typos in implementations
* Dry up RelationType access
* Quick check for differing querystring param names
Add some basic styling
Add a couple more test RelationTypes (WIP)
Misc fixes

* If target page doesn't have a menu, handle tab menus
* Move icon adding to Load event as some tabs weren't initialized yet
* Add fallback for macroId param (temporary, will move to interface)
* Add item count to tab view
Fix package build script to confirm to new structure, assets
Add MacroToContent usage type
Add toolbar icon
Update IRelation to support multiple PagePaths, so relations can be reused
Remove hardcoded `/umbraco/` reference
Add Helper to generate links/icons
Misc tweaks/polish to relations, add new
Misc tidying
Fix hardcoded field reference in XPath
Refactor to separate relations and the objects they relate to

* Add concept of UmbracoObject to store info about each related entity
* Refactor individual relations to have their Table generated by the UmbracoObject, so it can be reused across multipe relations (ie same visualization for Data Type -> Document Type and Template -> Document Type), use new objects for from/to
* Update toolbar logic to determine pages based on the UmbracoObject instead of the PagePath of the individual relation
* Update usages page to find available relations based on the UmbracoObject
* Add list of available UmbracoObjects, method to determine whether they should show based on the page path
Add tooltip to content nodes showing the path
Add name of object/page to modal title

* Would be nice to show the name of the item we're viewing too, ie Datatype Usages: DAMP.  Just need to add a NameById lookup on each object type.
Minor fixes