fixes issue #53
make RateTracker an interface
move implementation to BasicRateTracker
allow ClientBuilder to specify RateTracker
Merge pull request #55 from toffaletti/ratetracker_interface_53

fixes issue #53