add ->, ::, ->(), ::(), fix new to use trailing args

![](http://thebitchwhocodes.com/wp-content/uploads/2013/10/di-JMPP.gif)
If only PHP had unified symbol tables ;_;

Actually I could just implement this by having `y(-> foo bar)` return `['foo', 'bar']` if there's no such property and there is such a method... I'll just do that.