Move Typeclasses Out of the Core

Fixes #129