Implement PersistentObjectQuery::__toString()
Make query strings optional in PersistentObjectQuery

By making query strings optional, we can construct queries that match
all objects for a given entity.
Add PersistentObject::allObjects()

PersistentObject::allObjects() returns a persistent object query that
matches all objects for the persistent object class.
Merge branch 'feature/persistent-object-queries' into develop

Add support for queries matching all objects for a persistent object
class. The preferred way to create such a query is through the
PersistentObject::allObjects() static method.