Initial commit
enum used.. code refactored.
Fixed conflictes and Enum implementation