a lot of design updates..

Signed-off-by: Marc MacLeod <marbemac@gmail.com>