Modify AssertArrayHasKey and AssertArrayHasNotKey

Currently the new Assertion methods only check for a key
with `isset` and that a value is present (not null).

This change modifies the `isset` to use `array_key_exists`
to verify a key is in an array regardless of the value of
they key. This ensure if the value is null, and they key
is there the test passes.

It also checks to see if ArrayAccess is being inherited
from. If so it falls back to isset since `array_key_exsts`
only checks primitive arrays.
Merge pull request #838 from buddylindsey/modify_key_assertions

Modify AssertHasKey and AssertHasNotKey to work with null value
add a test to demonstrate failure of deeply nested document 'exists' attribute
fix issue where a document retrieved from the database would not recursively set the 'exists' flag for all nested documents
fix typo in $nor operator reference
Merge pull request #853 from pixelcog/mongodb-nor

fix typo in $nor operator reference
Merge pull request #852 from pixelcog/document-exists-fix

Fix `exists` property of deeply nested documents.
update Request::to() to allow overriding the query string and remove unnecessary formatting requirements on port
update Request::queryString() to merge query parameters of the same name
Entity::errors() will append errors and will merge the new given errors
with the previous ones already stored in the Entity's $_errors variable.
Also, added a reset functionality to clear all errors.

Entity errors are cleared before the Model::validation() filter function to prevent validation (and consequent write data) with a not empty errors array.
Removed &$self from the filter since it was not used.
ixed tests.

Replacing tests with a more simple, direct approach (from Jails).
Merge pull request #854 from pixelcog/request-to

minor update to Request::to() and Request::queryString()
Merge pull request #840 from rapzo/feature/entity-appending-errors

Entity::errors() will append errors and will merge the new given errors
if document schema changes from something to a DocumentSet, now exporter update handles that
Merge pull request #859 from fellars/bug/document-schema

if document schema changes from something to a DocumentSet, now exporter...
Fixing file permissions incorrectly modified in #859.
$code variable cannot possibly be set to 204, using $this->status['code'] instead
update docblock for Request::status() and change $data to a more descriptive variable name
remove 'not yet implemented' docblock message from Model properties.
fix example within Model::find() docblock
Merge pull request #861 from pixelcog/lithium-qa

Simple QA Stuff