Create initial commit to add support for axTLS using global TURBO_AXTLS flag.

Pushed SSL specific code out of iostream.lua into crypto.lua in order to impleme
nt native axTLS support.

The validate_hostname() functions has been written in lua when using TURBO_AXTLS and it uses a new added utility function util.strcasecmp() that performs a fast string case agnostic comparison.
Merge branch 'master' of https://github.com/kernelsauce/turbo
Tested running an HTTPS server with axTLS to fix many bugs related to implementing axTLS in Turbo. The sslserver.lua test and githubfeed.lua test in examples now work using axTLS.
Merge branch 'master' of https://github.com/kernelsauce/turbo

Fixed Conflicts:
	turbo/cdef.lua
Merge branch 'master' of https://github.com/kernelsauce/turbo
Merge branch 'master' of https://github.com/kernelsauce/turbo

Resolved Conflicts in:
	Makefile
	turbo/crypto.lua
	turbo/ioloop.lua
	turbo/iostream.lua
Add proper file upload support to Turbo by supporting multipart/form-data.  Correctly parse form-data boundaries and decode name value data into the arguments table as tables withe the data in [1] and form-data field values in the hash.  Handle unescaping content-type javascript and json values and decode content-transfer-type base64; binary content-transfer-type is also supported.  The base64 encoding rather than binary may be more compatibile with some browsers that for example don't support XHR2, where the form-data has to be manually encoded in the XMLHttpRequest using javascript.
Remove a debug print for parsing form-data arguments.  Remove trailing whitespace from lines.
Fix bug in base64 encoding the last 3 bytes when they had the high bit set.
This bug was due to declaring the byte pointer as int8_t rather than uint8_t.
Also the encoding could fail for encoding less than 3 bytes, this has also been fixed.
Tested encoding random data of random length between 1 and 1000 bytes over a million times with no mismatches between the random data and its value after encoding and decoding.
Was getting segfaults during base64 encoding due to not allocating
enough bytes for the base64 encoded data.  The testing mentioned
performed in the last commit had a bug in it so that what was supposed
to be a random length was actually always the same length.  Fixed this
and repeated the testing and verified random data of random length
between 1 and 1000 bytes were being generated in the testing of
1,000,000 binary strings.  Testing passed.
Ugh, last commit didn't actually have the latest version of the file.
Increased mime base64 encoding speed to the max by implementing 12-bit
lookup for decoding 2 base64 characters at a time.  Re-ran
all tests.  This should compete with the fastest mime base64 encoders
available anywhere at a fraction of the code size and with Apache2 license
and unencumbered.
Fix indentation and mime base64 encoding on big endian processors.
Merge https://github.com/kernelsauce/turbo into kernelsauce_master

Still need to add axTLS support for the hash.

Resolved Conflicts:
	turbo/cdef.lua
	turbo/web.lua
Merge https://github.com/kernelsauce/turbo into kernelsauce_master

Resolve Conflicts:
	turbo/httputil.lua
	turbo/util.lua
Merge with https://github.com/kernelsauce/turbo.git

Except didn't merge the hash and secure cookie support.  Still need to develop this with axTLS.
Add untracked files missing from last commit.
Fix mistakes in previous merge.
Merge latest changes in turbovisor.
Fix compile error in turbo/web.lua
Add turbo/syscall.lua needed by fs module, fix for ppc arch.