Using a token bucket whose fill rate and capacity were represented by an
integer was resulting in errors if the simulation was run for a sufficiently
long time because of the accumulation of lost precision.  I've changed both
parameters to doubles and the errors have been corrected (I used the simplest
possible connected topology to test this- located in
tests/bandwidth/one_link.yaml).  I am not sure if by changing these
parameters to doubles I am breaking the properties of token buckets because
they are presented as integer counters in the literature.  I will think
through this tomorrow.  I also changed instances of "drain_rate" to
"fill_rate" and "drain" to "fill".  Though I was implementing a token bucket
throughout, I accidentally put in terms related to leaky buckets.