renamed a few things...
this is a lot better (might need some more work)