Zones CRUD functions and tests

This implements CRUD functions for Zones and basic tests for each function.
The finalizer need to be registered before the create() call happens, since exceptions raised by create will prevent the registration of the finalizer.