ReadFail Type

This exception is dedicated to non-fatal failures in reader functions, and is used for simple control flow between reader connectives. This allows simple implementation of reader connectives that trap non-fatal failures and act accordingly, whilst allowing other exceptions to propagate.