Splitted Flatten Syntax in two.

This is the same change as #302, only this time applied on the master branch.  If this passes tests, you can merge it and I'll merge master into unified-builtins then (so we can remove the other pull request).