Support float32, float64, and currency VARIANT's

* Fixed how float32/float64 are handled in ole.IDispatch.Invoke
* Added new Currency type (float64) to support VT_CY (CURRENCY) VARIANT's
* Changed Variant.Value method to support float32, float64, and Currency
Tests for VARIANT conversions.