added a bunch of front end stuff