A new function syntax, and various documentation updates.

The new syntax uses => returntype instead of :returntype. Additionally, a nil
return is now inferred.

Some examples:

A function taking no args and returning integer.
Old: function f():integer { ... }
New: function f( => integer) { ... }

A function taking a list[integer] (vararg), returning nothing.
Old: function f(list[integer] args...):nil { ... }
New: function f(list[integer] args...) { ... }

Additionally, a few minor corrections were made to the main README and the
builtin library README. Most of these corrections were for the new syntax, but
some were for various previous updates (object -> any, str -> string, etc).