WIP: bundles refactoring

The goal is to be able to generate in advance the assets and not having to do them on the fly. Effectively removing node.js and npm from the production dependencies.

### Changes

Usage of the bundles:

```jinja
{% bundles "10-jquery.js", "50-invenio.css" %}
```

Definition of the bundles:
```python
# invenio.modules.mymodule.bundles
from invenio.ext.assets import Bundle

# NB: if __all__ is specified, only the bundles present
#     will be harvested by Flask-Registry.
#__all__ = ('js', 'css')

js = Bundle(
    "js/jquery.js",
    "js/jquery.fileupload.js",
    output="gen/jquery.js",
    filters="uglifyjs",
    name="10-jquery.js",
    bower={
        "jquery": "2.1.0",
        "jquery.fileupload": "latest"
    }
)
css = Bundle(
    "less/invenio.less",
    output="gen/invenio.css",
    filters="less,cleancss",
    name="50-invenio.css"
)
```

Generating the bundles:
```console
$ inveniomanage assets build
--------------------------------------------------------------------------------
INFO: invenio.modules.mymodule: 10-jquery.js -> gen/jquery.js
--------------------------------------------------------------------------------
INFO: invenio.modules.mymodule: 50-invenio.css -> gen/invenio.css
--------------------------------------------------------------------------------
Building bundle: gen/jquery.js
Building bundle: gen/invenio.css
```

The bundles are collected via Flask-Registry.

### To-Do

- [x] `inveniomanage assets build` compiles the bundles
- [x] the compiled bundles are put into `/overlay/base/static` for `collect`.
- [x] drop the old `js`/`css` syntax
- [x] `inveniomanage bower` that generates a bower.json file.
- [ ] fix legacy pages (bundles are expected to appear in the `<head>`)
- [ ] [versioning support](http://webassets.readthedocs.org/en/latest/expiring.html#what-is-the-version-of-a-file) or [manifests support](http://webassets.readthedocs.org/en/latest/expiring.html#about-manifests)?
- [ ] documentation of a deployment using `sdist`.
- [ ] fix `deposit` and `workflows` modules
- [ ] move `bower_components` to `$package/base/static/vendors`.

Closes #1767 
https://github.com/inveniosoftware/invenio/pull/1863/files#discussion_r14576848 will also solve this hack.