initNs and initBindings in SPARQLWrapper.update

Using initNs is implemented by adding declarations of the form
`PREFIX prefix: <uri>` to the beginning of the update.
initBindings is realised by adding the corresponding VALUEs at the
beginning of all WHERE blocks. Adding VALUE at the end of an update is
not possible. Since WHERE blocks must be used for updates operations
supporting variables and must not be used for operations not
supporting variables, this works out nicely, even if there are
multiple operations in an update.

This commit also fixes the Content-type and the name of the query
parameter for updates.
(See http://www.w3.org/TR/2013/REC-sparql11-protocol-20130321/#update-operation)
Improve bindings in SPARQLUpdateStore, add tests
Making test compatible with Python < 2.7
Merge pull request #292 from uholzer/sparqlstore-bindings

initNs and initBindings in SPARQLWrapper.update