Merge InspectableWebContentsImpl and DevToolsFrontend

While this prevents clients from easily implementing their own devtools
windows, it gives us much easier control over the devtools experience.
Make the devtools close button work
Support docking the devtools on the right side of the window
Support undocking the devtools view into its own window