Update design document

Need to merge this branch to master