Add replace.js
Add replace.js

This corresponds to a pre-release version of replace.js, currently under
code review here:

  https://gerrit.causes.com/25809
  https://gerrit.causes.com/25810
  https://gerrit.causes.com/25811
  https://gerrit.causes.com/25812

These four commits will eventually be applied on top of the current HEAD
of master of replace.js (currently a455a4b37a735c91b8efa4e52).

This functionality will be used to build up the forthcoming dashboard
view, where we'll have a few potentially expensive components to render,
and want to bring them down asynchronously and in parallel.

Change-Id: I17da4ec92d7bee10cacdb9cc638aa5758266ac07
Reviewed-on: https://gerrit.causes.com/25849
Reviewed-by: Greg Hurrell <79e2475f81a6317276bf7cbb3958b20d289b78df@causes.com>
Tested-by: Greg Hurrell <79e2475f81a6317276bf7cbb3958b20d289b78df@causes.com>

causes/twigg,causes/twigg