code completely functional; now cleaning and commenting
code clean, well documented and working*