added timing, walls, and random maze generation