Update surface.py

Updated version of surface.py. The method in the Slab class has been modified to allow for the enumerating of different termination sites in a slab. A unittest has been added to see if the .cif files generated to represent the slabs with different termination sites has been properly generated
Merge pull request #115 from richardtran415/surface

Update surface.py