Two way compiled and two way bound templates for JavaScript