Added SDF Export to PandasTools and adjusted SDF Import

The pull request contains the commit from @samoturk in the pull request #401. In addition to these changes, I made the generation of a smiles column optional and defaulting to not generate it. Adding a smiles column later on is simple, but automatically doing it silently changes the matching of SD tags to dataframe columns.

The export is fairly self contained and is nearly identically reproducing the SDF input. The deviations are mainly occuring when some SD tags are not present in all molecules in the input SDF. Such cells are filled in the dataframe with "nans" which consequently end up in the written SDF. 
Another deviation is that the generated SD file contains the valences for some atoms (e.g. Cu,Si,Se) in the atoms block even if they were not present in the input.

Are these deviations acceptable?

@samoturk : Do you think the method signatures and the changes to the input are reasonable or would you suggest doing things differently?