[SE-0289] Address some review comments for function builders (#1182)
[SE-0289] Address some review comments for function builders (#1182)

* [SE-0289] Clarify the role of each build* function.

Addresses various questions about the role of each build* function.
Require buildBlock() to be implemented in every function builder.

* [SE-0289] Clarify the role of buildOptional(_:) after the injection tree

* [SE-0289] Added an example for buildLimitedAvailability
natecook1000/swift-evolution,apple/swift-evolution,abertelrud/swift-evolution,apple/swift-evolution,abertelrud/swift-evolution,natecook1000/swift-evolution