improvements to new model V3

- removed "amount" from "buy" function all over
- more error handling
- code cosmetics