Support GCC/LLVM stack-smashing protection

Turn it on with `cmake -DENABLE_SSP=1` Protection buffer/stack overflow exploits.

Starting with version GCC 4.9 there is support for more advanced protection from overflows `-fstack-protector-strong` (minor loss of performance), the version below only support `-fstack-protector`.
LLVM 3.6 supports `-fstack-protector-strong` prior to this worked as a stripped-down option `-fstack-protector`.

This option protects the stack from overflowing/exploiting/debug and implementation process for laying.
RHEL, CentOS, Ubuntu uses these options to build all binary deb packages in the delivery.

This optional (default=disabled), need more testing.

More info:
- [RELRO: RELocation Read-Only](https://isisblogs.poly.edu/2011/06/01/relro-relocation-read-only/)
- [Improve your software security with GCC Stack Protector Strong](http://www.simonroses.com/2013/04/appsec-improve-your-software-security-with-gcc-stack-protector-strong/)
- [Hardening overflowing/exploiting/debug](https://wiki.debian.org/Hardening#Stack_Protector)
- [Buffer overflow protection](http://en.wikipedia.org/wiki/Buffer_overflow_protection)