extend preprocessor to support uint64

- use BigInteger instead of long
- fix issue #224 (#define UINT64_MAX 0xffffffffffffffffu)