Working Window Stuff

We still need to do a bunch of work to allow config files and to do user
inputs and all kinds of stuff like that. We would currently need to
create an abstraction system to allow us to create new processes on
different platforms.