Restores the old signature for select_subnets

RM8734 update

RM8734 introduced better logging but also modified the signature of
select_subnets, accidentally breaking the is_strategy_satisified call in
a subtle way. This restores it and changes the logging to pull the
ip_version from the filters dict instead.
Fixes update_port to handle empty security_groups

RM10261

Updates the handling of security groups in update_port to allow no
security groups to be passed at all. Previously, if groups were not
passed, that was interpreted as the same thing as passing an empty list
of groups, mistakenly calling the redis portion of the update handling,
and could have potentially wiped out flows for any port that had
security groups.
Fix RM9305

* Fix does not allow a tenant to associate a network to a port
that does not belong to them unless it is publicnet or servicenet

* In existing UT, adds tenant_id to network models

* Added UT

Conflicts:
	quark/tests/plugin_modules/test_ports.py
Use non-specific way to detect shared networks

RM9305
Fix security groups invocation to detect presence

RM10261
Merge pull request #268 from asadoughi/RM10027_now_RM9305_hotfix

Rm10027 now rm9305 hotfix
Merge pull request #269 from Cerberus98/RM8734

Restores the old signature for select_subnets
Merge pull request #270 from asadoughi/disable_security_groups

Fix security groups invocation to detect presence
Merge pull request #271 from Cerberus98/rm10261_work

Fixes update_port to handle empty security_groups
Fix test_subnets_get_marked_as_full_retroactively
Limit nvp name to 40 chars

This is an NVP hard limit
RM#10088
Merge pull request #272 from rackerlabs/up_rm_10088

Limit nvp name to 40 chars
Merge pull request #274 from asadoughi/fix_test_subnets_get_marked_as_full_retroactively

Fix test_subnets_get_marked_as_full_retroactively