Initial commit.
Updates to get basic flatten and unflatten working.