runtime: use better hash for non-empty interface

The implementation 'return 0' results in too many collisions.

LGTM=khr
R=golang-codereviews, adonovan, khr
CC=golang-codereviews, iant, khr, r
https://codereview.appspot.com/125720044
runtime: shorten hash declarations

LGTM=iant
R=dvyukov, iant
CC=golang-codereviews
https://codereview.appspot.com/117680044
cmd/go: implement 'internal' convention

See golang.org/s/go14internal for design.

LGTM=r
R=r, adg
CC=golang-codereviews
https://codereview.appspot.com/120600043
runtime: use better hash for floating point inputs

Hashing on the bytes instead of the words does
a (much) better job of using all the bits, so that
maps of floats have linear performance.

LGTM=khr
R=golang-codereviews, khr
CC=adonovan, golang-codereviews
https://codereview.appspot.com/126720044
test/mapnan.go: add regression test for non-empty interfaces.

LGTM=rsc, khr
R=rsc, khr, bradfitz
CC=golang-codereviews
https://codereview.appspot.com/126720043
runtime: clean up naming of mcallable functions.

Introduce the mFunction type to represent an mcall/onM-able function.
Name such functions using _m.

LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://codereview.appspot.com/121320043
debug/dwarf: fix typos in comment for UnspecifiedType

LGTM=iant, bradfitz
R=bradfitz, iant
CC=golang-codereviews
https://codereview.appspot.com/120700043
cmd/go: revise disallowInternal

This fixes two problems: x/internal/y/z was using parent = x/internal/y instead of x,
and hasPathPrefix only looks at /, not \ for Windows.

LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://codereview.appspot.com/121280045
encoding/xml: add InputOffset method to Decoder

Among other things, this allows users to match the decoded
pieces with the original XML, which can be necessary for
implementing standards like XML signatures.

Fixes issue 8484.

LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://codereview.appspot.com/122960043
path/filepath: do not restore original working directory twice in test

LGTM=dave
R=golang-codereviews, dave
CC=golang-codereviews
https://codereview.appspot.com/122910043
doc/go1.4.txt: implement monotonic clocks on windows

LGTM=dave
R=golang-codereviews, dave
CC=golang-codereviews
https://codereview.appspot.com/126760043
doc/go1.4.txt: add support for ALPN

LGTM=minux
R=r, agl, minux
CC=golang-codereviews
https://codereview.appspot.com/121340043
C: add Paul Nasrat (Google CLA)

TBR=gobot
R=golang-codereviews
CC=golang-codereviews
https://codereview.appspot.com/125790043
misc/nacl: wrap lines in README file

LGTM=dan.kortschak, dave
R=dave, dan.kortschak
CC=golang-codereviews
https://codereview.appspot.com/121350043
doc: document new ParseMultipartForm behavior

Fixes issue 8403.

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://codereview.appspot.com/123860043
runtime: shrink stacks in parallel
Shrinkstack does not touch normal heap anymore,
so we can shink stacks concurrently with marking.

LGTM=khr
R=golang-codereviews, khr
CC=golang-codereviews, khr, rlh, rsc
https://codereview.appspot.com/122130043
runtime: remove mal/malloc/FlagNoGC/FlagNoInvokeGC
FlagNoGC is unused now.
FlagNoInvokeGC is unneeded as we don't invoke GC
on g0 and when holding locks anyway.
mal/malloc have very few uses and you never remember
the exact set of flags they use and the difference between them.
Moreover, eventually we need to give exact types to all allocations,
something what mal/malloc do not support.

LGTM=khr
R=golang-codereviews, khr
CC=golang-codereviews, rsc
https://codereview.appspot.com/117580043
runtime: fix plan9/windows build
Fix few remaining cases after cl/117580043.

TBR=dfc
R=golang-codereviews
CC=dave, golang-codereviews
https://codereview.appspot.com/124850043
runtime: convert markallocated from C to Go

benchmark                      old ns/op     new ns/op     delta
BenchmarkMalloc8               28.7          22.4          -21.95%
BenchmarkMalloc16              44.8          33.8          -24.55%
BenchmarkMallocTypeInfo8       49.0          32.9          -32.86%
BenchmarkMallocTypeInfo16      46.7          35.8          -23.34%
BenchmarkMallocLargeStruct     907           901           -0.66%
BenchmarkGobDecode             13235542      12036851      -9.06%
BenchmarkGobEncode             10639699      9539155       -10.34%
BenchmarkJSONEncode            25193036      21898922      -13.08%
BenchmarkJSONDecode            96104044      89464904      -6.91%

Fixes issue 8452.

LGTM=khr
R=golang-codereviews, bradfitz, rsc, dave, khr
CC=golang-codereviews
https://codereview.appspot.com/122090043
cmd/gc: remove ignored debugging arguments in Fconv print

LGTM=dave
R=golang-codereviews, dave
CC=golang-codereviews
https://codereview.appspot.com/123880043