Remove some horrible old code.

Removal of C_ASSERT define. It doesn't offer descriptive assert and every supported compiler has static_assert (msvc 2010+, gcc4.6.3+, clang). Also removed it from some plugins that didn't use.
Added some comments to asserts where applicable.

Removal of unused __hot, __cold, __naked.

Removal of horrible gcc4.4 hack that was unused.