Component#content now accepts a format option

this enables custom formatting for components. Probably not the best way
to do this, but it's a first step.