First commit

``open_state`` seems a little bit odd as a state name, I would call it ``at_rest`` or ``wait_request``