add shapeless dependency, let's try doing it this way