Added spot fx and forward fx

Spot date calculations look mostly sensible. FXPair is an attempt to
 stay sane about which way up the fx pair is. Same with
 UOM.toString now returning (for example) USDGBP for the uom GBP/USD.

Added FXForward instrument