cleanups
re writing main object
+++