Added vulcan middlewares support.

Good point. Too bad I can't use built in marshaling with struct field tags because it escapes angle brackets and other "URL-unsafe" characters.