Added Ractive.js

It's not perfect, but it's close, and this makes a much better base to
build templating / widgets around than the home-grown stuff we were
working on.