Avoid surprises and use POST to negotiate

As Roy Fielding notes [1]:

  Yes. In other words, any HTTP request message is allowed to contain
  a message body, and thus must parse messages with that in mind.
  Server semantics for GET, however, are restricted such that a body,
  if any, has no semantic meaning to the request. The requirements
  on parsing are separate from the requirements on method semantics.

  So, yes, you can send a body with GET, and no, it is never useful
  to do so.

Therefore, to avoid surprises, always use POST to negotiate, because
our negotiate always requires a body. The semantic of negotiate,
in fact, is "I want to negotiate this test with you and I want to
use the following, possibly empty, parameters".

With surprises I mean that, for example, it was not clear to Antonio
why there was a body with GET and, reportedly, jQuery and AJAX refuse
to send a body with GET as request method.

Prompted by a comment from Antonio Servetti - thanks!

Notes:

1) I verified that the negotiation still works with the currently
   stable server and the code of this diff;

2) I verified that the compatibility layer for the old speedtest
   API correctly translates GET to POST.

Links:

[1] http://groups.yahoo.com/neo/groups/rest-discuss/conversations/topics/9962