More design fixes.
Nearly finalized.

Signed-off-by: Aniket Pant <me@aniketpant.com>