This was an attempt to use angular. It may be returned to eventuall