new state pattern
statepattern komplett
statePattern tests