Rewritten

* Now uese quasiquotes for matching
* Allows scala BigDecimal(double)
* Does not compare types using toString