Initial commit with design document