more static typing
more dyn interfaces
comments
clean up
cosmetic