basic zone support
added static assert on zone type
Merge branch 'zones' into develop