Support for handlebar partials

##Example:

```
./MojitName/views/
    foo.hb.html
./MojitName/views/partials/
    bar.hb.html
```

by following that structure, you should be able to define `foo.hb.html` like this:

```
<div id="{{mojit_view_id}}">
    {{> bar}}
</div>
```

Few more notes:

- a partial view can be used by any view within the same context/mojit.
- global partial views are also supported.

##Details:

- adding support for partials in the store. there is now `instance.partials` with a similar structure than `instance.views` after expanding the instance. 
- views within `partials/*` folder are now consider partials, which are an special type of view.
- adding support for `application.json->viewEngine->preloadTemplates` to preload any view in memory, and this is disabled by default.
- consolidating `application.json->viewEngine->cacheTemplates` as a static config across the board.
- adding support for preloadTemplates for HB client and server to avoid loading the template if is is part of the expanded instance.
- adding support for partials on hb client and server.
- `view-renderer` is now a class and a factory to avoid creating renderer objects over and over again.
- removing viewId argument that is not really relevant for this abstraction.
- using the new `Y.mojito.ViewRenderer()` factory to access the renderer instance.
- removing unnecesary dependencies (`mojito-perf`).
- removing unnecessary configuration that is not semantically correct for `action-context` or `mojito-client` like `cacheTemplates` and `pathToRoot`.

Second attempt for PR #683