Impl cashier, customer, product and purchase + unit tests