Add support for `switch` expressions. Deprecate `select`

I have added a `switch` combinator to replace the `select` combinator with the intent to fix #7.

Please review and comment.


I considered different signatures.

Current: `switch :: a -> b -> [(a,b)] -> b`

Alternative: `switch :: b -> [(a,b)] -> a -> b`

Maybe the alternative signature is more compositional?