merging in gfxmonk's major refactor to the way that returns are pushed down into the interior of expressions
merging in gfxmonk's major refactor to the way that returns are pushed down into the interior of expressions

sterpe/coffee-fmt