make some methods private

also add a method to select random elements from arrays,
and stop using a loop to choose the starting position.