Just an experiment. Putting it on github so I fucking finish something for once.