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
Create CONTRIBUTING.md

As discussed in #11.
Merge pull request #15 from 50Wliu/contributing

Create CONTRIBUTING.md (r=psychonic).
Fix inconsistencies with OnClientDisconnected calls (bug 5988)
Merge pull request #16 from psychonic/client-disconnect-quirks

Fix inconsistencies with OnClientDisconnected calls (bug 5988, r=kyles)
Add support for the preliminary IDE project file generator.
Merge pull request #17 from alliedmodders/vsgen

Add support for the preliminary IDE project file generator.
Revert to using revision count for full version strings.
Fix build.
Merge pull request #18 from asherkin/version-count

Revert to using revision count for full version strings (r=dvander).
Update the build script to the latest AMBuild API.
Merge pull request #19 from alliedmodders/update-build-scrpt

Update the build script to the latest AMBuild API.
Fix a case where bots can leave server without disconnect notice (hibernation), triggering other issues.
Factor out versioning.
Fix typo.
Port build scripts to the new project API.
Remove tag().
Merge pull request #20 from psychonic/bot-hibernation-disconnect

Fix case where bots leave server without disconnect notice (hibernation) (r=KyleS).
Merge pull request #21 from alliedmodders/components

Convert build scripts to the new project-based API.