# Functions

OpenJournal returns a new journal structure for interacting with a journal stored in the [start, start+length) range of blocks accessible via dev.
OpenPartition returns a partition struct for accessing the slots described by the given geometry using the provided read/write methods.

# Structs

Geometry describes the physical layout of a Partition and its slots on the underlying storage.
Journal implements a record-based format which provides a resilient storage.
Partition describes the extent and layout of a single contiguous region of underlying block storage.
Slot represents the current data in a slot.

# Interfaces

BlockReaderWriter describes a type which knows how to read and write whole blocks to some backing storage.