Changes:
+ Implement `Focus.set/3` with `Focus.over/3` (thanks @pmeinhardt)
6d37f88
+ Fix for attempting to compose multiple non-existing lenses to set a
value f2a36c0
+ Fix for setting values in maps when the current value is `nil` -
ca5d524
Notes:
+ Attempting to view or update values using lenses that aren't present
in the structure now invariably returns `{:error, {:lens,
:bad_path}}`. In some cases previously, the original structure would
be returned unmodified. The new behavior is more consistent.