Num typeclass
Added monoid
Explicit typeclass instances