[#1188] Allow organization dropdown to be displayed

The current logic was unclear. If a user belongs to at least one
organization, the dropdown will be displayed, both on the created and
edit forms. Same for the visibility one.
[#1188] Allow empty orgs if datasets can be unowned

If the "create_unowned_dataset" is set to True and you are not a
sysadmin and select the "No organization" option on the dataset form,
you get a validation error.
Revert "[#1188] Allow organization dropdown to be displayed"

There is certain logic, albeit a bit flacky, in hiding the organization
dropwdown, in that if shown, any user belonging to an organization could
take ownership of any unowned dataset in the instance. We need to
properly define the auth rules and enforce them at the validator level
as well. For the time being, showing the dropdown only to sysadmins
makes sense (and of course fixing the original bug on the visibility
field validator, which is done on the next commit)

This reverts commit f366ba684340adbb903b78bc5beb871069a6a0c2.
[#1188] Fix visibility validator

To not rely on owner_org being present, when the validator gets a value
of private and there is no owner_org, we request the dataset anyway and
check if it actually has an owner_org.

Added new validation tests
[#1188] Remove debugger call
[#1188] PEP8 fixes
[#1188] Tweak checks to support empty strings