Initial Commit of codebase

Nialls Code with Karinas additional code