constructer fixes and such