Add processes state view in observer

State of generic processes is shown in a new tab of the existing
processes view.
Behaviour is also shown when declared into the module attributes,
otherwise 'undefined'.
If state format is not detected, Format is set to 'overriden' when
format_status/2 is defined, otherwise 'unknown'.
Some processes don't treat system messages, this imply a short delay
 for displaying the process view, arbitrary set to 200ms.
observer: re-indetion of observer_procinfo.erl
observer: corrected tip message
Fix receive support in erl_eval with a BEAM module

Using the low-level BEAM instructions, we can loop over each message in
the process queue and removes the first message that matches, without
receiving them all to later send them back to itself.

The function prim_eval:'receive'/2 is equivalent to the
following pseudo-code:

  'receive'(F, T) ->
    RESET MESSAGE QUEUE POINTER,
    LOOP:
      case PEEK CURRENT MESSAGE WITH TIMEOUT T of
        {ok,Msg} ->
          case F(Msg) of
            nomatch ->
              DECREMENT TIMEOUT T,
              ADVANCE MESSAGE QUEUE POINTER,
              GOTO LOOP;
            Result ->
              RESET MESSAGE QUEUE POINTER,
              Result
          end;
        timeout ->
          RESET MESSAGE QUEUE POINTER,
          timeout
      end.

To not break Dialyzer and other tools, we use a stub Erlang module which
abstract code is forcefully inserted into prim_inet.erl afterwards
compilation.
Added preloaded prim_eval
Updated primary bootstrap for erl_eval
compiler: Correct liveness optimization for wait/1

The live optimization in beam_utils:live_opt/4 did not take into
account that the wait/1 instruction *never* falls through to
the next instruction (it has the same effect on the control flow
as the jump/1 instruction).
Don't send default Inband-Security-Id in CER/CEA

RFC 6733 recommends against the use of Inband-Security-Id, so only send
a value that differs from the default.
Adapt CEA/DPA Failed-AVP to RFC 6733

By setting only one, not many. The handling for other messages (except
DWA, which is forgiving of errors) was dealt with in commit f7ec93e3.
Merge branch 'anders/diameter/inband_security/OTP-11050' into maint

* anders/diameter/inband_security/OTP-11050:
  Don't send default Inband-Security-Id in CER/CEA
Respect Host-IP-Address configuration

Addresses returned from a transport module were always used to populate
Host-IP-Address AVP's in an outgoing CER/CEA, which precluded the
sending of a VIP address. Transport addresses are now only used if
Host-IP-Address is unspecified.

In other words, respect any configured Host-IP-Address, regardless of
the physical addresses returned by the transport. To use the physical
addresses, don't configure Host-IP-Address.
Merge branch 'anders/diameter/host_ip_address/OTP-11045' into maint

* anders/diameter/host_ip_address/OTP-11045:
  Respect Host-IP-Address configuration
Fix setting of Failed-AVP on {answer_message, 5xxx} from handle_request

RFC 6733 says that certain 5xxx result codes must be accompanied by
Failed-AVP, and decode populates #diameter_packet.errors with
Result-Code/AVP pairs for errors it detects. However, Failed-AVP was not
set in the outgoing answer if the handle_request callback returned
{answer_message, 5xxx}. It is now set with the AVP from the first pair
with the specified Result-Code, if found.

Note that {answer_message, 5xxx} doesn't handle all cases in which a
5xxx answer is required, only that in which the setting above is
appropriate. If it isn't then handle_request should construct its answer
and return {reply, Ans}.
Merge branch 'anders/diameter/5xxx_failed_avp/OTP-11092' into maint

* anders/diameter/5xxx_failed_avp/OTP-11092:
  Fix setting of Failed-AVP on {answer_message, 5xxx} from handle_request
Merge branch 'anders/diameter/one_failed_avp/OTP-11127' into maint

* anders/diameter/one_failed_avp/OTP-11127:
  Adapt CEA/DPA Failed-AVP to RFC 6733
Merge branch 'maint'
Merge branch 'bjorn/compiler/fix-compiler-crash/OTP-11119' into maint

* bjorn/compiler/fix-compiler-crash/OTP-11119:
  compiler: Correct liveness optimization for wait/1
Merge branch 'maint'

* maint:
  compiler: Correct liveness optimization for wait/1
erts: Change erlang:open_port spawn to handle unicode

Previously only 'spawn_executable' handled unicode input.
Also change 'cd' option to always handle unicode.
Update open_port documentation and tests
erts: Change erlang:open_port/2 spec