WIP: Much UI awesomeness

Fixes #89, #88, #85, #75, #73, #43, #41, #34.

@pdehaan r?
missing semi. maybe i need to review my half-arsed JSHint targets.