foldtext: Closure display tweaks.

Use `\W` before the `function` keyword so `foo(fucntion () {})` is matched.
Display the full closing delimiter set, e.g. `});` so it matches the first line.
foldtext: Display `class` `implements` lists even when they are on multiple lines.
foldtext: Include the `while` in `do while` loops.
foldexpr: Require a space after the `class` keyword to avoid matching namespaces that start with 'class'.
Update README with lots and lots and lots and lots of examples.