Fix parameters mixup by enforcing API uniformity: data parameter goes before URI.
Used to be mixed up in the class, e.g. different overloads of Post had conflicting order.
As a result, there were calls (e.g. generic Post calling into nongeneric Post) mixing them up: using data instead of URI and URI part as data.
Pulling content-type and accept parameters up the call chain, to allow specifying them explicitly wherever needed.
Example for content-type: creating a new build-type requires submitting a plaintext name, but the content-type was hardcoded as XML; setting to text/plain made it work.
Example for accept: creating a new build-type yielded XML content by default, while we expect JSON for parsing, setting accept to JSON fixes the matter.
Adding one method to use locator for getting a build type, plus a few semantic methods which were missing from the implementation.