Revised to `??=` & `=??` variants
Revised to `??=` & `=??` variants

I realized there's two use-cases here— assigning only when RHS is non-nil, and assigning only when the LHS is nil.

* Renamed the existing `=?` operator to `=??`.
* Added new `??=<Wrapped>(lhs:inout Optional<Wrapped>, rhs:Wrapped)` operator, which only does the assignment if the `lhs` is nil.  
	‣ Works like Ruby's `||=` operator— _`a ??= b` means `a = a ?? b`.
	* Also added a variant with takes a `lhs:inout ImplicitlyUnwrappedOptional<Wrapped>`.  
		‣ Swift doesn't extend `Optional` usages to work with `ImplicitlyUnwrappedOptional`s too, I guess.
* Updated header doc-comment for the renamed & new operator.

capnslipp/NilCoalescingAssignmentOperators,capnslipp/NilCoalescingAssignmentOperators