Correctly support non-additive strategies. v0.0.53.

* StrategyValue class inherits from type float but overrides __add__
  to support weighted summation rather than simple addition.
* Initialising StrategyValue accepts a 'k' parameter to store the number
  of elements represented by the value contained by the StrategyValue instance.
      For example one may have 100 bases with a GC-content ratio of 0.5
      which could be constructed: StrategyValue(0.5, 100)
* Unless k has been provided by the user upon instantiation, by default
  non-zero values will set the instance's k to 1 and otherwise 0.
  The latter default prevents initialised 0 values from having an impact
  on the weighting of values that are then added to it via __add__
* GCRatioStrategy now returns a StategyValue rather than float upon evaluation.
* Note that other strategies need not change their interface and Goldilocks
  seamlessly supports float and StrategyValue (as the latter is a subclass
  of the former).
* Added SimpleGCRatio test suite.