Value stack top/resize: wrap and typing fixes

Partially clean up the duk_set_top() implementation, and fix the 32-bit
pointer wrapping bug where e.g. a top value of 0x20000000UL would wrap
the 32-bit address space (0x20000000UL * sizeof(duk_tval) is 2^32 when
duk_tval is 8 bytes) and would therefore incorrectly be equivalent to
duk_set_top(0).

Other typing fixes.
Typing fixes for basic stack handling API calls
Pointer arithmetic trivia

Prefer (ptr + i) to &ptr[i]; the latter is easier to break on 64-bit
platforms.
API testcase fixes for changed error messages
Release note: pointer wrap fixes
Typing cleanup for remaining API calls
Test case fix for new error message