Add a trait abstracting over transactions and connections

This is implemented *in addition* to the intrinsic methods because
having to import a trait to call `prepare` sucks.

Closes #63
Fix for upstream changes
static -> const
Switch to servo's rust-url
Attempt at supporting date type