clean up constructors/destructors a bit