Add an abstract class for tunnel zones

This patch adds the abstract class for tunnel zones and tunnel zone
hosts.

Change-Id: Iff5fffd071dbbbfea2c76150e96a10fad62ef486
Signed-off-by: Taku Fukushima <tfukushima@midokura.com>