object with additionalProperties=false should not admit additional fields

Previosuly, a schema having an empty object (one with no "properties")
would admit additional fields even when additionalProperties was set to
false.

I've included a test.