Add additional tests, refactor views and added some fuctionality on front-end