Fixes #41

Re-implements port_update and several IPAM methods to support what seems
to be the actual intent of the Neutron API, or at least as it's consumed
by Nova. More specifically, it's now possible to pass only a subnet_id
as a "fixed_ip" to port_update and receive a new IP generated via the
configured IPAM driver. Additionally, Quark now treats all existing IP
addresses that have matching "fixed_ip" entries in the update body as
NoOps, hopefully cutting down on any potential IP loss.
Merge pull request #42 from Cerberus98/master

Fixes #41