Add Unit Testing and Basic GUI