Update to the project and added Unit Tests.