fixed handler chain documentation

There is a discrepancy between the way the handler chaining currently works (according to the specs and my own testing) and the documentation.  The documentation states that handler chaining is based on the return value of the handler, and this is currently not the case.  It is entirely based on whether broadcast mode is enabled and whether `throw :pass` or `throw :halt` are specified.  This PR updates the documentation accordingly.