move help links to a new navbar dropdown; simplify footer

Bug: 1012224
Change-Id: Ic8617dc1d2f782bc1176d693b12461e8a0c2055e
move TurboGears JS/CSS injection into master.kid

Currently this injection happens in the TurboGears-supplied default
sitetemplate (turbogears/view/templates/sitetemplate.kid). The problem
with that is any customised sitetemplates also need to duplicate the
same TurboGears-specific injection code.

We can move it into master.kid instead, and then the default
sitetemplate can just be empty.

Bug: 1012224
Change-Id: I63714533fdd82b98de4cab50eccb47419174470c
build assets on application startup, instead of during the build

This will make it possible (in a subsequent commit) to augment the asset
sources by dropping new files in and/or setting a config option. That
way Beaker installations can add site-specific customisations without
having to rebuild Beaker's entire asset tree.

The asset building tools (uglify-js, ycssmin, lessc) are now runtime
requirements rather than build-time requirements.

We can also no longer be lazy and just install the generated/
subdirectory plus the .webassets-manifest file. Instead, we extract
a list of all required source files from the assets environment itself,
and use that during the package build to copy over the necessary files.

Ultimately the asset sources should not be bundled at all (Fedora now
requires this) but that is a longer term goal.

Bug: 1012224
Change-Id: Id8e2883269287a120236d52f0863e9ab0e7f4e4c
add site.less, for defining site-specific Less rules

Admins can (either by hand, or in a separate RPM) overwrite the
site.less symlink to point at their own custom Less rules, which will be
included with Beaker's Less sources when generating CSS.

Ideally this would just be a config option of extra filenames which are
appended to the 'css' assets bundle. Unfortunately that doesn't work
because webassets compiles each Less source file separately, which
prevents the site Less rules from overriding or cross-referencing the
Beaker ones.

In future Less might support @import globs [1] which would allow us to
@import site rules from a defined directory. But until then we have to
do this ghost symlink hackery.

[1] https://github.com/less/less.js/issues/1181

Bug: 1012224
Change-Id: I86f6d6987fd66988a46ec7372bbc3a249f015b46
docs: describe how to apply a custom web UI theme

Bug: 1012224
Change-Id: I956b24f90172d18ab787a2438778aba4566744a8