Added opaque property for PComponents

Each component now has a method to return whether its default rendering
method fills all pixels or not. A design also has such a method when
rendering a component.

This property is useful for renderers to minimize the number of
components that need to be re-rendered at once.