Improvements on state parameters

I recently made this changes for an application I'm using. I'd like to hear your thoughts on this. I've seen one of the features was already implemented in master a couple of weeks ago.

* Let `ui-sref` understand params without object notation, assuming an object which key is the same as the varname; e.g.
````html
ui-sref="sign-in(credentials, verify)"
````
would be the same as
````html
ui-sref="sign-in({credentials:credentials, verify:verify})"
````
This helps to reduce verbosity a bit.

* Preserve the type of state params instead of converting them to strings (already implemented in master as seen in https://github.com/angular-ui/ui-router/blob/master/src/state.js#L816)

* State params are not limited to the ones defined in the url or params array. Any param passed to transitionTo method is passed to the state. The motivation behind this was that I wanted to be able to pass params to a state, not via URL but transparently. It seems params[] serves this purpose, but it is mutually exclusive with URL params. You can either have one or another, but not both.

* Binds to the submit event of the form if the state referenced by ui-sref doesn't have an url.