add rebates
move rebated exercise class to experimental/exercise
Move leftover inclusions to where they are needed.
Revert changes to date() method.

The check would be redundant in loops. Instead, I added a dateAt()
method that checks the index (like vector::at).
Merge pull request #49.