add notes on pattern matching, where bindings, let binding and case expressions