Support optional callback URLs passed to registration endpoints

- /[source]/start endpoints accept "callback" and "feature" fields
  now instead of "state". we construct state by urlencoded the
  JSON representation of these arguments
- encode_state_param and decode methods added to bridgy/util
- added unit tests for twitter and facebook registration callbacks