erts: Implement yielding for distributed send of large messages

Use same mechanism as term_to_binary to yield
while encoding large messages for distributed send.
erts: Yield in term_to_binary while copying large binaries

Applies also to distributed send.
erts: Remove unnecessary goto for fun encoding
erts: Yield in term_to_binary when encoding big maps
erts: Optimize some repeated calls to {E,W}STACK_PUSH
erts: getsockname is not allowed on non-bound sockets

This only produces an error on win32, but should not really be called
on *nix either.
erts: Fix ub in list_to_integer and bignum div
First attempt at adding a skel for -spec's

New skel adds a -spec for the function after point.
configure.in: fix test == bashism
eldap: Add support for modifying passwords

This implements the LDAP Password Modify Extended Operation (RFC 3062)
with two new functions modify_password/3 and modify_password/4. The
former is for directly setting passwords, and the latter is for users to
change their own passwords.

Since all three parameters are optional, I've opted to support this with
the empty string rather than a property list. This seems consistent with
other functions in the module (i.e. modify_dn/5).
ssh: Add ptty_alloc/[2,3]
ssh: Add pty_alloc request to ssh:shell/[1,2,3]
Fix a typo in the mnesia documentation
ssh: Add basic ptty_alloc tests
erts: Fix bug in beam_ranges

Symptom: VM on OSX (darwin11.4.2) with +Meamin running sasl tests,
crashing when init:reboot() does erlang:purge_module(installer).

Problem: Off-by-one bug in beam_ranges:find_range, returning the wrong
range if the 'end' of one module is the 'start' of the next. This is only
possible if using sys_alloc (+Meamin) as our own allocators always put
block headers between allocated payload data.
erts: Mend run_erl to set windows size of terminal sent from to_erl

Need to include sys/ioctl.h for TIOCSWINSZ to be defined.

Seems this was broken when refactoring run_erl for OSE in OTP 17.0.
ssh: Correct typo of renegotiate that could cause rekeying to fail
Merge branch 'ia/ssh/pty-request/OTP-11542' into maint

* ia/ssh/pty-request/OTP-11542:
  ssh: Add basic ptty_alloc tests
  ssh: Add pty_alloc request to ssh:shell/[1,2,3]
  ssh: Add ptty_alloc/[2,3]
Merge branch 'maint'
Merge branch 's1n4/mnesia_doc_typo' into maint

OTP-12278

* s1n4/mnesia_doc_typo:
  Fix a typo in the mnesia documentation