KNI: use a memzone pool for KNI alloc/release

This patch implements the KNI memzone pool in order to prevent
memzone exhaustion when allocating/deallocating KNI interfaces.

It adds a new API call, rte_kni_init(max_kni_ifaces) that shall
be called before any call to rte_kni_alloc() if KNI is used.

v2: Moved KNI fd opening to rte_kni_init(). Revised style.
v3: Adapted kni examples/tests to rte_kni_init().
v4: Improved example integration. Fixed kni_memzone_pool_alloc/release() bug.

Signed-off-by: Marc Sune <marc.sune@bisdn.de>