Initial work on a component demo

Initial work on a component demo, along with cleanup of a couple components and a few bug fixes.