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

![](http://thebitchwhocodes.com/wp-content/uploads/2013/10/di-JMPP.gif)
I was wrong

![](http://iambrony.steeph.tp-radio.de/mlp/gif/131671675122.gif)