fixed some bugs, got stuck on one though.. can't figure it out..