[poc] What if... we'd use type classes?