Move the `Identity` class to the `identity` module and add some explanation of its abstraction