finish up backend, hook up frontend