jsdoc updates, added base `state` class