added base Bonus class and logic;