Allow forced no registration and POST method for setState

Allow the AP to explicitly store a state document with no registration by passing a registration of null in the configuration.

Allow the AP to specify it wants to use POST instead of PUT for application/json.

Supersedes https://github.com/RusticiSoftware/TinCanJS/pull/93
Is there a reason to make this change in the `TinCan` interface rather than in `TinCan.LRS`? Seems like we should add the null check to the underlying method, in this particular case to `TinCan.LRS.retrieveState`, as there is never a case where `null` is an acceptable 'registration' value, correct?