Inital Commit with all beginning implmentations
Minor changes to do some initial error checking - Many errors still occur