Base commit - need to sketch more at the whiteboard before proceeding.