Currently there is a StateBackend interface and an AbstractStateBackend class which are not very closely related to each other. I think this should be cleared up before the 1.0 release a little bit.
The KvState for instance requires an AbstractStateBackend which does not implement the StateBackend. On the other hand the StateDescriptors bind to StateBackends
I think we could get rid of the StateBackend interface and rename the AbstractStateBackend -> StateBackend. We only need to modify the bind method of the descriptors.