Code is somewhat sloppy.. but its in alpha