moajor bugs are fixend. needs to clean up