In addition to utility methods and standardized properties, it defines the implementation tasks
for all Lithium classes that work with external data, such as connections to remote resources
(`connect()` and `disconnect()`), introspecting available data objects (`sources()` and
`describe()`), and a standard read/write interface (`create()`, `read()`, `update()` and
Subclasses may implement any other non-standard functionality, but the above methods define the
requirements for interacting with `Model` objects, and other classes within `lithium\data`.