Merge remote-tracking branch 'upstream/master'
Merge remote-tracking branch 'upstream/master'
Merge remote-tracking branch 'upstream/master'
Conformant header guards

Fixes #606
Removed Unnecessary NULL-Pointer Check

Fixes #607
Merge pull request #609 from CodaFi/cpp-conformance

C++ Safety and Conformance