Lots of fun, thanks benchprep

Testing is not great, especially the javascript. Definitely an area of future improvement for me.