Add string literal concatenation using ellipses "..." (bug 4261)

Backported the changes CompuPhase did to the compiler to support string
literal concatenation including all fixes in later commits from r30 on.
http://code.google.com/p/pawnscript/source/detail?r=30

Pawn uses ellipses "..." to concatenate so it looks like this:

#define PROJECT_AUTHOR "Greyscale"
#define PROJECT_COPYRIGHT "Copyright (C) 2010  " ... PROJECT_AUTHOR

This would result in PROJECT_COPYRIGHT being defined as
"Copyright (C) 2010  Greyscale"

While i've been at it, that stringizing a macro parameter feature was
ported too.
From the changelog for version 3.3.4026
(http://www.compuphase.com/pawn/pawnhistory.htm):

The macro substition processor now recognizes the "#" character for
"stringizing" a parameter. For example, if you have the definition
#define log(%1) #%1
Then the expression log(test) will result in "test".
Note that concatenation of literal strings requires an ellipsis in pawn
(which is different than C/C++). So to combine the parameter with
literal strings, use a syntax like:
#define log(%1) "logging: " ... #%1 ... "\n"
The stringize operator is only available in the replacement text of a
macro.

Doing
PrintToServer(log(hello));
would print
logging: hello\n
Ignore \ ctrlchar in lexing
Replace SourceHook list usages in clientprefs with AMTL.
Utilize convar cache for FindConVar.
Revert "Add better spacing to compile.sh"

This reverts commit cd106a7eb6f66ae5f7f6b27c5af7102cc02d2bc1.
Fix build.
Merge pull request #2 from psychonic/pawn_stringconcat2

Fix build.
Merge pull request #5 from peace-maker/pawn_stringconcat

Add string literal concatenation using ellipses "..." (bug 4261, PR #5, r=dvander).
Update TF2 CalcIsAttackCritical gamedata.
Use updated IServerTools iface on TF2 for getting tempent list and FindEntityByClassname.
Add ifdef section notes on endifs.
Merge pull request #33 from alliedmodders/tf2-iservertools

Use updated IServerTools iface on TF2 for getting tempent list and FindEntityByClassname (PR #33, r=KyleS).
Update CSGO Windows SetClanTag gamedata (bug 6150).
Update TF2 SDKHooks Reload gamedata.
Merge pull request #25 from KyleSanderson/kylepreds

Replace SourceHook list usages in clientprefs with AMTL.
Merge pull request #27 from VoiDeD/convar-cache

Utilize convar cache for FindConVar (r=KyleS, r=psychonic)..
Update Fistful of Frags gamedata.
Added spacing to compile.sh
And made it exit out on compile error.
Fix line endings in tf2_stocks include.
Update TF_WEAPON enum for June 11, 2014 TF2 Patch.