Made some semantic changes, fixed the model system.

So essentially you could use this at the moment and it would work
extremely well, now I just need to start implementing many more
features, very excited.