Update MCSystemPick to take a StringRef

Updated for both Android and iOS (not used on desktop; Android is a nop)
Updates on MCSession methods
Updates on MCServer* methods
Add MCNAME: an equivalent of MCSTR for NameRefs

Does exactly what it says on the tin.
Stack loading code now uses StringRefs/NameRefs
Replaced MCmessagenamestring with MCN_messagename
Merge remote-tracking branch 'upstream/refactor-syntax_unicode' into refactor-syntax_unicode_MCSession
Add new method MCVariable::set(MCExecContext&, MCValueRef)

This is analogous to the existing set(MCExecPoint) method. Unlike the setvalueref(MCValueRef) method it does the same synchronization at the EP set.
Remove GetEP() calls from the MCServerExecPut* and MCServerExecEcho methods

Only the desktop version of MCS_put has been updated; the others are pending.
Update MCS_put to not use ExecPoints on mobile platforms
Changed MCS_put to take an ExecContext for server builds
Add ConvertToBinary to MCExecContext

For ValueRefs that aren't already a DataRef, this converts to a string and then creates a DataRef out of the native bytes of the string.
Change MCU_puturl to use an ExecContext instead of an ExecPoint

An overload still taking the traditional EP has been provided for existing callers.
Change MCNetworkExecPutIntoUrl to no longer use GetEP

Does its thing using an ExecContext instead of an EP now.
Updates after Seb's feedback
Fix a build error for iOS platforms

The exec.h header was not included in mblspec.cpp, leading to build errors.
Merge remote-tracking branch 'upstream/refactor-syntax_unicode' into refactor-syntax_unicode_MCSession
Updates after Seb's feedback #2
Merge branch 'refactor-syntax_unicode' into refactor-syntax_unicode_mcsput

Conflicts:
	engine/src/variable.cpp
	engine/src/variable.h
Change MCexeccontexts to MCExecContext[] (from MCExecPoint[])

The debugging code was also reworked to take ctxt parameters instead of EP parameters.