docs; updates
use strict
overwrite works with non-empty objects too
docs; update