Let user control display/embed behaviour more explicitly

For lack of a better approach, I decided to handle the different ways of displaying/embedding plotly graphs (depending on session mode) with a parameter for the `ggplotly()` method.  This parameter, `session`, can take 3 possible values: `interactive` (default, reminiscent of former implementation), 'knitr' and 'ipynb' (which stands for IPython Notebook, running a native R kernel).
Defaulting to this behaviour has proven useful in the Shiny App use case (where session was not detected as interactive, as expected).
Please review /cc @pedrodz @xsaintmleux @tdhock 
Documenting ipynb use right away.
totally silly comment: "notebook" instead of "ipynb", that seems like a more standard name for this sort of thing across languages? (and with jupyter up and coming)