Entity now considered empty unless create()d

Entitiy::toString will return ‘’ (empty string) unless they have been
explicitly create()d.

This allows for entities to be instantiated but only print out if
actually used. This will allow EntityCollections (and subclasses) to
instantiate pieces of themselves that will be ignored if not used. For
example a Table that doesn’t use it’s Footer will now just ignore the
footer instead of printing out empty footer tags.
EntityCollections now return empty unless created

Since collections aren’t intended to have create() called as normal
course, add() will now check to see if the collection has been
create()d and will call create() if not.

This allows for calls like collection->add(… some element…) to also
create the parent collection at the same time as it’s child element.
added test suite
converted PanelHelper to entity architecture