This is still a WIP! PROBABLY WILL NOT FINISH. (3 days of work so far) Old version: https://scratch.mit.edu/projects/256993041