source: Add code to test GCD
source: Add header, implementation, and test code for GCD
config: Update .gitignore