Expand Usage section at the start of the file
Minor enhancement: replace 'advantage of' with 'advantage for'
Simplify API by returning 'undefined' in get() for unset properties

The documentation of the API in README.md highlighted the fact that returning
'null' in get() introduced a difference between get() and retrieving the
value directly from 'this', for any property not defined yet.

It also prevented from testing whether the value was actually unset (undefined)
or had been explicitly set to null (empty). I tend to abstract my code from
the difference between null and undefined by testing for missing values with
no() but the difference may be relevant in some cases including debugging.

Having get() return undefined when the property is missing makes it behave
less like a HashTable in Java (but Java has no undefined value) but makes the
behavior more predictable for JavaScript developers.