change string indexing to avoid invalid indexes in more cases, and
eliminate the thisind() function

For example, search("∀ x", "∀", 1) used to give 1:3, which doesn't
make much sense since the "3" is an artifact of the encoding and isn't
a valid index. Now it gives 1:1, or in general a:b where a is the index
of the first found character and b is the index of the last found character.
Merge branch 'master' of github.com:JuliaLang/julia into jb/strindexchanges
work towards allocating new bindings per-scope and per-for-loop-iteration
(#1571)
Merge branch 'master' of github.com:JuliaLang/julia into jb/newvars
get sysimg building with new binding behavior (ref #1571)

the most problematic change was forcing for loop variables to be loop-local,
instead of reusing existing local vars. for example

    local i
    for i = 1:2
    end
    return i

currently works and returns 2.

for now, the behavior is to introduce new variables for each iteration unless
we are overwriting an existing local. comprehensions, however, always
introduce fresh variables and never overwrite existing ones.
Merge branch 'master' of github.com:JuliaLang/julia into jb/newvars
Merge branch 'master' of github.com:JuliaLang/julia into jb/strindexchanges

Conflicts:
	base/exports.jl
Merge branch 'master' of github.com:JuliaLang/julia into jb/newvars
Update mailmap
Merge branch 'master' of github.com:JuliaLang/julia
Merge branch 'master' of github.com:JuliaLang/julia into jb/strindexchanges

Conflicts:
	base/exports.jl
Merge branch 'jb/strindexchanges' of github.com:JuliaLang/julia into jb/strindexchanges
Merge branch 'master' of github.com:JuliaLang/julia into jb/newvars
remove redundant box allocation code now handled by :newvar
pmap modified to work with any iterable

added generic map on iterators. added docs

added pmap test cases
map with fewer temp arrays
Allow building llvm from git; support llvm3.4svn

This adds makerules for building LLVM from latest upstream git master to be able to try out new versions.
This also adds support for the changed APIs as of yesterday's LLVM master.
Align unsafe_store!/unsafe_load semantics
some newvar improvements:
  - don't need to re-null vars never used undef
  - don't need newvar nodes for (internal) local! decls
Merge branch 'jb/newvars' of github.com:JuliaLang/julia into jb/newvars