Interface Objects
Shard is intended to be engine agnostic, which means it has its own API. Game engines however do not implement the Shard API, so there has to be some in between.
Shard attempts to wrap the engines representation of units, the game, and the map, etc, into Shard friendly versions with an expected API. These objects are wrappers, and are not AI logic, but rather how you would acquire a units health, or issue a command.
Internally, they may look very differently, see the API implementations page for details