moved renderer retrieval to separate getRenderer() method in View, execute() cannot return a renderer anymore now. this is necessary so caching may work later for people who set their output type in the View, and not via filters or the routing. refs #141 and #78