Add test on Metastate which shows a problem on provides.
When a state is used as implementation by several states, there is just one provide object shared by all created states.
Add documentation
Small fix