Modify AssertHasKey and AssertHasNotKey

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.
Fix Tests.

There were some assertions that did odd things against what is
supposed to happen. array_key_exists requires a string or int
to use when checking for keys. These tests use random other stuff
as keys, so modified the tests to revert back to how they used to
be tested.