Feature mesh

Dear all,
Here is the implementation of the stand-alone mesh.
Files:
 - abstractmesh.py: abstract interface for the class
 - mesh.py: current implementation of the mesh and the different types of elements.
 - test_mesh.py: the set of unitary tests for the class.

Please be wellcome to review the code and point out any suggestion or improvement.
Br. 

You can use a alternative pattern here,
```python
try:
    return copy.deepcopy(self._faces[uuid])
except KeyError:
    error_str = "Trying to get an non existing face with uuid: {}"
    raise ValueError(error_str.format(uuid))
```