Add "procedures": functions that do not implicitly return a value

"Procedures" are functions that do not implicitly return a value:

```coffeescript
test = ->> 'hi'
test() # undefined
```

They can, however, manually return a value:

```coffeescript
test = ->> return 'hi'
test() # 'hi'
```

Procedures are created with the `->>` glyph. Like regular functions, they can be bound to the current "this" context, using the `=>>` glyph.

I figured I'd get the ball rolling on this by putting together some code. Tests are included, and it passes all current ones.

I know this has been brought up before (specifically in #899, #1812, #1836, #1855,...), but perhaps with a concrete implementation, this could actually go somewhere.

Thoughts?