Basic implementation in place.
WIP getting tests in place.