update requires.
pull data out, create points and shuffle.
add comment.
initialise guesses.
whitespace.
tidy up outline.