initial full implementation of tip calculator