updated design document, getting close to completion