Set up a listener for your state
It is required to fill in the generic with your state,
if you do not do this the store will be unable to find your listener.
Example:
All your stateclasses have to extend this class,
this class does not actually have any functionality other than making it more clear which classes are state and which are not
Good practice is keeping state immutable, try to follow this rule as much as possible.
Example of a valid stateclass:
the class used to transfer the state from the store to the notifiers
You only need to use this class if you intend to use the stores stream of state changes directly