Add ability to override the renderer [New feature 3.x]

Scope
====
In Joomla! if you want to override something you have to put it in the active template directory (e.g.: the layouts goes in (active template)/html/layouts).
This PR introduces the ability to override the whole rendering process in the template by copying (and modifying per your preferences) the /libraries/joomla/document directory.

It shouldn't rise any backward compatibility issues (except that the directory [active template]/document might be in use?).

What you can do if this gets accepted?
======
Because renderers are the place where the code gets from arrays and strings to actual html, xml, raw, feed or json, you can do pretty much whatever you want.
Some examples of creative code that can be put in the renderers:
Put custom code in renderer html (eg minifier, remove <JDoc )
Create custom code for head (e.g.. scripts and css concatenation, custom metas)
Mesh around with the error page and feed in creative ways
Or go all the way and get mustache or twig in the template

Why?
=====
Because this is one area that if you want to override and use your own logic you have to do it through a plugin (this is way easier and cleaner)

Test instructions:
=====
Apply the patch
assuming selected template: protostar
create directory named document in /templates/protostar
copy the folder html from /libraries/joomla/document to protostar/document
So you have /templates/document/html/html.php
edit html.php (in protostar foolder...)
In the last function _fetchTemplate()
replace the line before return so it will be like
```$this->_template = $this->_loadTemplate($directory . '/' . $template, $file). '<!-- comment -->’;```
(Add a comment after the document)
Refresh the page, see the source at the bottom you should have <!-- comment -->
You just overrided the render!

Feature tracker: http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=34027