Related to #11 - the current implementation is incomplete, and we need to think about a proper representation.