Residue (Number theory)

Added number theoretic functions
* Chinese remainder
* Primitive root
* Primitive root list
You can make both `rem` and `mod` declared as `const` as @certik mentioned.