Menu dropdowns
Handle web errors by capturing component key

When errors are thrown in the template handling, it is difficult to know
which component was involved. This uses a catch and rethrow on error,
when the component and handler key are known.
Ring bindings should use (merge-with merge)
Support for multiple templates

Non-default templates can be indicated with a keyword in wrap-template.
Fix cljs to allow multiple cljs-builder components