Initial work; seems to work aside from AJAX fails; see #1