added an url builder interface, so urls can be generated from routes in templates
added method to container to add implementations of components