[WIP] - v6.0.0 Release Candidate

## Widget 6.x
This PR is intended for a major release.
Basically normalizes the widget API with the following methods:

## API
* .show(options[, callback]): Displays widget on signin mode by default with both signup and reset password button actions (if enabled from connection). Triggers `ready` when available on DOM.
* .showSignin(options[, callback]): Displays widget on signin mode without signup nor reset password button actions. Triggers `signin ready` when available on DOM.
* .showSignup(options[, callback]): Displays widget on signup mode without buttons actions. Triggers `signup ready` when available on DOM.
* .showReset(options[, callback]): Displays widget on reset mode without buttons actions. Triggers `reset ready` when available on DOM.
* .hide([callback]): Hides and removes de widget. Triggers `hidden` event when done. Calls `callback` too, as a second option.

> The `callback` parameter on `.show*()` methods gets called on popup mode for Single Page App aplications, avoiding the usual and default Oauth's redirect when logging in.

## TODO:

* Normalize instance options and display options
* Add a few more features for enterprise connections

cc @jfromaniello @woloski @siacomuzzi @mgonto @pose 
I'd use `_.contains` instead of `indexOf` everywhere. It's clearer.