Changed a bunch of things around, still working on it!