footer.less: Don't expand beyond 60px height

Otherwise, we end up with overflowing the page height.
input-groups.less: Don't bring active button to front

This causes an flickery overlapping border when two buttons are side by
side and the user switches the mouse between them.
view: Rename 'layout' namespace to 'page'

This helps underline the fact that it's designed to serve pages.
view: Move 'heading' function into 'ui' namespace

It seems like a more appropriate place for it, since it is a UI
component.
view: Add a separate 'error' namespace

This separates the page logic from the error page generation.
search.less: Force left rounded edge of #q
view/page: Import jQuery UI 10.6

Using the Google CDN. Note that as we approach feature completion, we
can swap this bulky full version for a much more stripped down subset by
building a customized jQuery UI with just the features that we require.

Issue #234.
Implement autocomplete for protein names

Using the jQuery UI autocomplete widget, and a client side list of the
500 most common names, generated by hand.

Issue #234.
Implement autocomplete for sources and locations

Taking an arbitrary but smaller subset of the most common values for
each field.

Issue #234.
Merge branch 'issue/234'