Add finally(), associated documentation and tests.

This PR adds support for a `finally` statement that adds a handler executed by the step chain on final resolution, error, or cancellation. Also adds unit tests for `finally` and a section in the README.
Exceptions in Swift/ObjC don't work like those in Ruby or Java—they're generally expected to halt execution and cause a crash. There isn't even `try`/`catch` in Swift. So handling exceptions in `then` or `onError` is out of scope for this lib.