added singleton
updated cabal file descrption, synopsis
cleaned imports