Decidable equality typeclass

Building on top of #192 by @Ralith, here is a typeclass for equality decision procedures + some easy implementations.