Menu moved implementations from header to cpp.
Added virtual destructor to State.