struct in6_addr member .s6_addr16  is non-standard! Start replacing it with .s6_addr.

Disclaimer: this patch was only tested for project building. Functional tests were not made.

libipv6.c: replace usage of struct in6_addr.s6_addr16 with .s6_addr.

struct in6_addr.s6_addr16 is not standard [1]. The only standard member of
this structure is uint8_t s6_addr[16].

[1] netinet/in.h - Internet address family
    http://pubs.opengroup.org/onlinepubs/009695299/basedefs/netinet/in.h.html

There are 289 more instances of the usage of s6_addr16 that need to be fixed. I suggest further programming no longer uses this non-standard structure member.

Also, there are 16 instances of s6_addr32, and s6_addr8 is declared although not used. Those will need to be fixed too. Again, I suggest further development refrains from using s6_addr(8|16|32) and limit its usage to s6_addr.

This patch series just sets the bar on what the goal is, and provides the first two changes to set the reference for everybody else.