second commit, mostly finished back end & front end skeleton