Finish Design branch with [design.md](http://design.md "‌") 1. back merge with main 2. make sure client is finished first. every component. 3. Do the... by @shyam | Factiii