untrusted setText and version checking

setText is for the most part more straightforward in CEF than in the other
browsers. Title events are fired correctly even in the absence of titles
and it appears to fire loading events correctly. However trusted
navigation is not currently working. The load_string method provided by
frame appears to refuse to run with the url set to a native url. If you
navigate manually to a native url first then attempt to set the text with
the url specified as the root it will not run. The code returns the error
-310, too many redirects.

As for the isInstalled, cef3 gives us the revision number. I just check if
it is leq the current one.
minor changes to previous commit
implement ipc response mechanism (shared logical file) between browser
and render processes, implement LocationChanging event sending, fix ref
counting, change CreateCEFString to return cef_string_t
workaround to avoid on_before_navigate() crash, track multiple IPC files
per Browser
CEF3: made execute() synchronous, implemented evaluate(), implemented
uniform message send/response mechanism in browser and render processes
Adding JS dialog events

Implemented the JS Dialog handler. This means that there are now methods
for the 4 kinds of dialogs: confirm, alert, prompt and navigation. All of
which are styled after the windows Webkit dialogs of the same kind. The
methods take a JS Dialog Callback object that they execute after the
dialog is closed.

Caveats:
* The style of the before navigation dialog is different from the others.
  This is something I duplicated from the webkit implementation but it
  strikes me as odd.