VLAN tag crash and rewritten match_std.c

Hi Eder,

We have fixed a crash caused by memory corruption when handling packets with VLAN tag.

Furthermore I have rewritten the match_std.c module in order to simplify and clean up the code as well as fix a number of faults that we found when matching packets to flow entries and when comparing flow entries strictly and non-strictly.

Hope you can pull the code changes. Please run tests because we can't run tests with the original, unmodified softswitch. 

Thanks, Jan