class Posts
This class provides two key features.
1: Posts contains static method get() that returns the
requested posts based on the passed criteria. Depending on the type of
request, different types are returned. See the function for details
2: An instance of Posts functions as an array (by extending ArrayObject) and
is returned by Posts::get() as the results of a query. This allows the
result of Posts::get() to be iterated (for example, in a foreach construct)
and to have properties that can be accessed that describe the results
(for example, $posts->onepost).