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

![](http://thebitchwhocodes.com/wp-content/uploads/2013/10/di-JMPP.gif)