Remove update_title call

Since we return TRUE, the function gets called anyways.
Use uzbl_variables_get_* instead of direct access
Log when a request URI is rewritten
Factor out event string creation

This is to allow the request infrastructure to use the same code.
Add request code

Very similar to events, but synchronous. This allows the event manager
to be the other end of '*_handler' commands.

This doesn't actually work yet since uzbl is all one thread, so any
request command blocks.
Filter out replies from commands to run
Remove "variables"

This commit removes selected_uri, last_result, uri, and geometry from
the list of read-write variables. The first two can't be meaningfully
set and the last two don't act like normal variables since they may
change behind the scenes.
Implement request handling in the EM
Implement a request command

Until uzbl is threaded, using this command will deadlock uzbl.
Make callbacks match GIOFunc
Refactor adding watches to GIOChannels
Add GAsyncQueue GSource code from RhythmBox

License and README included.
Don't dump objects into the root directory

Apparently the 3p directory is confusing things.
Run I/O in a separate thread

I/O talks to the main uzbl thread over a GAsyncQueue for common things
and inserts any replies found into a locked buffer. This has multiple
benefits over other approaches since:

  - requests are replied to synchronously as far as the main thread is
    concerned; and
  - commands aren't shuffled around into a scheduler-defined order.