Refactored step 2; testing is WIP.
Link in readme in docs/