fully fleshed out add/edit pages, looks ugly as sin but it works