Fix bug where it was impossible to send False values for boolean options.

We only send the minimal payload while sending a create/update request.
This is because we don't want to change the already existing defaults.
So, I have set the default value for boolean types None (instead of False)
because if the default were False, it would be sent with every request
on account of being non-None. However, this made it impossible to send a
False value in a request. So, now I have added complementary options
which can be used to send a False value for these options.