code: def register(extention, handler = nil, &block)
           handler ||= block
           raise 'Handler or block required.' unless handler
           @render_library[extention.to_s] = handler
           handler
        end
docs: Registers a rendering extention.
  
   Slim, Markdown, ERB and SASS are registered by default.
  
   extention:: a Symbol or String representing the extention of the file to be rendered. i.e. 'slim', 'md', 'erb', etc'
   handler :: a Proc or other object that answers to call(filename, context, &block) and returnes the rendered string.
              The block accepted by the handler is for chaining rendered actions (allowing for `yield` within templates)
              and the context is the object within which the rendering should be performed (if `binding` handling is
              supported by the engine). `filename` might not point to an existing or valid file.
  
   If a block is passed to the `register_hook` method with no handler defined, it will act as the handler.