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
Merge branch 'master' of github.com:snarfed/bridgy