Allow unicast NA messages without LLA option, in accordance to RFC2461
section 4.4, and as suggested by Phillip Toelke.

Change-Id: Ic9d9a6ad82ec201d25b9fc024936cfb1b41f1a7a
fixed bug #35435: No pcb state check before adding it to time-wait queue while closing
tcp pcb: persist_cnt can be u8_t instead of u32_t (since it is compared against u8_t only)
partly fixed bug #25882: TCP hangs on MSS > pcb->snd_wnd (by not creating segments bigger than half the window)
Fixed unused local variable warning (patch #7711)
Multiple compilation fixes:
- use C style comments, not C++ style;
- don't use #if with undefined parameter;
Correctly calculate the default value of MEMP_NUM_SYS_TIMEOUT as needed
Fixed unused variable warning
Removed unused variable in ip_debug_print()
fixed bug #35537: MEMP_NUM_* sanity checks should be disabled with MEMP_MEM_MALLOC==1
Patch by Stéphane Lesage:
fixed bug #35536 SNMP: error too big response is malformed
fixed bug #35531: Impossible to send multicast without a gateway (introduced when fixing bug# 33551)
fixed pbuf leak when PPP session is aborted through pppSigHUP() (bug #35541: PPP Memory Leak)
Added lwipopts.h file for unit tests
Fixed unit tests: adapted lwipopts.h and fixed test_tcp_new_counters_pcb() after adding snd_wnd_max to struct tcp_pcb.
Minor: cosmetic source code layout changes
unit tests lwipopts.h: NO_SYS==1, disable netconn and sockets (not tests) -> lwipopts.h is now usable for unix unit test makefile, too
fixed bug #35595: Impossible to send broadcast without a gateway (introduced when fixing bug# 33551)
Speed up LWIP_TCPIP_CORE_LOCKING by directly calling functions in api_msg.c instead of calling via function pointer.
Fixed unused variable warnings produced with the last commit