Creation of elementary classes for the Peach exporter

A new abstract class exporterPlugin was made in the core.

A new package PeachExporter, following the MVC standard, was made in netzob-plugins.
So it contains a view, a controller, a model and a globalMenuEntry.
The controller and the globalMenuEntry are standard.
The view is simple and needs to be adjust.
The model is simple too and needs to be strengthen and sharpen.
Exporter to Peach improved to manage field's length, fundamental types of netzob and multi-symbols fuzzing.

The Peach exporter works and is smarter than before, it now manages the length and some types (INT, Word, NumericalWord) of netzob.
It works better on entire project and fuzz every symbol sequentially which he does not before.
Next step : Make stateful fuzzers and manage multi-types. Add size field.
Improvement on the regex analyser of the Peach exporter.

It can now parse and understand complex multi-field regex.
Some bugs are corrected too.
Improvement of variable management.

The peach exporter can now handle tree-like variables (aggregate) and choose an optimal Peach type to represent the underlying field.
It solves a bug in PcapImporter.
Manage netzob variable's values.

If a netzob field has a variable, the first of its values becomes its default value and the others become alternative values known by Peach as valid values hint.
Functions documented pythonicly.

The code is much better understandable now.
Improvements in the variable management.

Aggregate and alternate variable are now fully and properly managed and translated into Peach xml.
Use of fixup is now automatic and induce by the use of alternate on netzob.
The whole Peach xml file is now generated.
GUI for Peach export changed

The new interface is prettier, allow the user to choose between regex-driven or variable driven fuzzing. The user can also write donw its fuzzer on a file through it.
Peach exporter GUI corrected.

The previously version was not PEP8 compliant and has some bugs.
We also add a file 'PeachzobAddons.py' which is a little plugin for Peach.
Adding the referenced variable management in the Peach exporter.

Now the peach exporter understand netzob's referenced variable and translate it correctly in Peach.

Netzob-core modification:
AggregateVariable.py was modified because it contained a bug.
ReferencedVariable.py was modified to add a getter for the variable pointed by a referencedVariable.
Adding the possibility for the user to choose to mutate or not neztzob static fields.

A checkButton was added for the user to choose if we want to mutate or not the netzob static fields.
Improving PEP8 compliance of function and class comments.
Correction on regex export

Default fixed average length now removed.
Resolve the encoding problem and include data type in fixups.

Resolve the encoding problem between netzob hex inferred datas and peach hex data generator.
Include data type (String, Number, remainers) in fixups. So the randomString function can generate pure string or string fill with integer.
The 'or' fixup includes types similarly.
Solve a problem on static field integer field export.

Their peach value used to be the ascii translation of their netzob hex value.
Add the possibility to fuzz randomly IPv4 field in regex-driven mode.
Solve a problem in the communication between netzob and peach.

It used to prevent Peach to properly handle peach types inferred by netzob.
Modify the pre-commit hook

The pre-commit hook is modified in order to: not raise an alert if a plugin's author is different from netzob's authors.
It allowed anybody to be author of its own plugin.
Change the author of the peach exporter plugin.

It is now Benjamin Dufour and no more Georges Bossert and Frederic Guihery who are netzob's author.
Add an abstraction level to exporter management.

New abstract (and simple) classes are defined in order to abstract some treatments on exporter views, controllers and menu extension.