- Adding source files for different functions.
- Touch-up to CMakeList to make it compliant to our system.