Project to date.

Code as of now. Should have comments that allow easy understanding also.