added obstacles and a bit of random behavior