clean up & debug

 - rm unused imports
 - move more stuff to base SnotelIO class
 - shorter class names
 - tighten exception scope
 - handle corner cases