Backport SearchDAO enhancements to master
Split linking and annotation controllers/views into their own module.

The models are still needed for core functionality at the moment, so
they remain in core.
Surrender to inevitability and move all models to core module.

This allows us to get rid of the mutable config that registered models
for generic JSON conversion and is, anyway, consistent with having the
type string definitions in core anyway. Keeping the controllers, views,
and routing in separate modules should keep the benefits in terms of
incremental compilation.
Remove unused controllers
Impemenent showing external links. Need to rationalise this code A LOT.
Starting trying to consolidate linking/access point functionality
Numerous cleanups to login functions/forms
Add a few more docs
Cleanup
Formatting and style cleanups
Add an access point meta type for consistency
Allow passing id string to itemNotFound err template
Docs and mark out horrible function for improvement
Cleanup and reinstation of update callback
Add crude init script
Merge branch 'master' into portal_dev