[Yaml] Added support for object maps

Previously, the parser treated maps ( {} ) the same as sets ( [] ).
Both were returned as PHP associative arrays. Since
these are distinct entities, this can cause considerably problems for
the users, especially when YAML is being serialized into another
format such as JSON.

This commit allows the user to enable object-map support via a third
parameter on the Parse method.  It defaults to `false`, which means
that this commit does not break backwards compatibility.

If the user enables object-map support, maps are represented
by stdClass() objects.  Sets remain as arrays.
[Yaml] Cleanups for object maps