Merge branch 'refactor-syntax_unicode' into refactor-syntax_unicode_kupdown

Merge with lastest upstream
Add Unicode support to key up/down events

The key up/down events kup(...) and kdown(...) now take StringRefs.

KeySym functionality has also been enhanced - it now allows the encoding of Unicode codepoints in addition to the traditional ASCII and special keys.

A greater emphasis has been placed on whether an object cares about key presses or simply text. The "field" object is obviously interested in text but buttons (in the guise of pushbuttons, menus, etc) are really concerned with a particular keystroke being used as an accelerator or mnemonic. Therefore, field objects make use of the p_string parameter of the kup/kdown message while buttons instead use KeySym.

Theoretically, this allows any Unicode codepoint to be used as an accelerator or mnemonic for menus and buttons, respectively.
Merge branch 'refactor-syntax_unicode_button_menu' into refactor-syntax_unicode_kupdown

Conflicts:
	engine/src/osxdcmac.cpp
	engine/src/osxspec.cpp
	engine/src/stack2.cpp
Add basic implementation of MCStringGetCodepointAtIndex

Does not yet support UTF-16 with surrogate pairs!
Add MCKeySymToLower

Converts a KeySym value to its lower-case equivalent.
Merge branch 'refactor-syntax_unicode_button_menu' into refactor-syntax_unicode_kupdown
Updates on srv multipart
Merge branch 'refactor-syntax_unicode_button_menu' into refactor-syntax_unicode_kupdown
Change MCField::setupentry to use StringRefs
Some more updates on methods at 'Extras' tab
Updates after Seb's feedback
Merge branch 'refactor-syntax_unicode_button_menu' into refactor-syntax_unicode_kupdown
Merge remote-tracking branch 'upstream/refactor-syntax_unicode' into refactor-syntax_unicode_SrvMultipart
Updated signature of cgi_get_upload_temp_dir()
Updates after Seb's feedback
Updated some methods that used GetEP
Updates after Seb's feedback #2
Merge remote-tracking branch 'upstream/refactor-syntax_unicode' into refactor-syntax_unicode_SrvMultipart
Merge remote-tracking branch 'origin/refactor-syntax_unicode_SrvMultipart' into refactor-syntax_unicode_SrvMultipart
Updates after Seb's feedback #3