Refactoring handling of version

Realized that Naveed's update would cause the 'raw' methods to break, because they were including the version number twice in the request.

This should make the handling of versions a bit more flexible.