implementing Implicit Schema
refactoring code
fixing bug in calculate price
adding test for explicit. refactoring test classes