VPN performancev2

This version contains three major modifications to improve performance and reduce garbage

   * Recycling of objects through class.lua
   * Pre-boxing of ctypes in lib/protocol/datagram.lua and lib/protocol/header.lua
   * Usage of libpcap for efficient packet classification

My tests indicate that the code is now essentially garbage-free.