more componentized design

https://github.com/dimagi/commcare-hq/pull/927