Fixes various issues with shallow copying.

* The {.shallow.} pragma is now properly respected for objects and
  tuples that are not handled by genGenericAsgn(). Mirroring the
  decision in generic assignments, whether an assignment is shallow
  depends on the destination of the assignment, but not the source.
* String literals and complex inline constants are now properly assigned
  a location kind of locData.
* Assignments from a locData source will now force deep copying to
  occur, even if shallowCopy or {.shallow.} is being used. This
  avoids potential crashes from `shallowCopy s, "xxx"` or from
  `shallowCopy t, ("a", "b")`.
master compiler compiles with devel
Optimized the size of PNG images. 172KB > 143KB

Used optpng + pngout + deflopt.
Merge pull request #839 from ReneSac/master

Optimized the size of PNG images. 172KB > 143KB
Merge pull request #691 from rbehrends/fix-shallow-pragma

Fixes shallow pragma for objects and tuples.
deleted & purged dlls
resolved conflict
Redis: optional pipelining and better tested transactions
Don't need ref string; use PPipeline instead of ref TPipeline
Koch deletes the .gitignore while cleaning
factor per comments
delete echo statements used for debugging
Adds generic split proc to sequtils.
Fixes problems with JS code gen.

--out for JS backend now works. setLen now works, this also fixes the base64
module. getCurrentExceptionMsg now also works with exceptions thrown by
JS. log() supports a variable number of args now. Fixed some case
sensitivity issues with arrayConstr and other functions.
JS: Fixes math and streams module and implements json.
Adds split proc for strings with a string separator.
Implemented babel package list in lib.html.
Rewrote sentence about Babel in lib.txt.
fixed a typo
-d:useFFI is obsolete