introduced privacy levels
public_visible -> privacy_level
authentication options can be gotten from user
fixed gemspec