core: Fix hash.h function declarations
common: macro: Make FORCEINLINE same under other platforms

Previously it forceinlined only on MSVC, now it should also work on all
other platforms (at least GCC and clang)