Json views

Rabl views are now used to generate json responses (https://github.com/nesquena/rabl). This way we can avoid rendering json directly from model, which enables us to add aditional nodes that are derivates of model attributes (eg Uptime). The model class is much cleaner now.

Providers vary with information that json response carries, so the json views are different across providers. So I added ```provider_application.json.rabl``` for every provider (and default as a fallback) same way as we do with provider specific partials. ```provider_rabl_view``` helper is used (in controller and rabl views) to render the correct provider view.

This resolves #230