Updated README to match current `func` proposal

Tested all the code and proofread. Please let me know if I made any mistakes or if you want to make any changes : ).

I used english definitions of function types rather than normal type signatures so that people new to types can understand it and not get confused that maybe the type signature is part of how to make function types.

E.g.

    // A `B` takes a `Func` (which takes a `Str` and returns a `Num`) and returns a `Str`.

Instead of

    // B : (Str -> Num) -> Str

Maybe it would be better to use the shorter type signatures instead?