So much win, so much more coding to do before this will run properly...