Mike route metadata

implementation of utility to add meta data and route meta data
As discussed offline, there's no need to. A component can already wrap any other component (whether it owns it or not) within the render method of one of its components.