autocreate foreign broadcast sockets on broadcast

Also introduce libwebsockets_broadcast_foreign() separate from libwebsockets_broadcast()

Signed-off-by: Andy Green <andy.green@linaro.org>
ensure accept is nonblocking

Signed-off-by: Andy Green <andy.green@linaro.org>
break up ssl accept action

Signed-off-by: Andy Green <andy.green@linaro.org>
timeout coverage for ssl accept

Signed-off-by: Andy Green <andy.green@linaro.org>
force ssl rw bios nonblocking

Signed-off-by: Andy Green <andy.green@linaro.org>
force client ssl bio nonblocking

Signed-off-by: Andy Green <andy.green@linaro.org>
fix ssl bits outside of ifdef coverage

Signed-off-by: Edwin van den Oetelaar <oetelaar.automatisering@gmail.com>
trac 6 expose libwebsockets read with note about not normally needed

Comes in handy if the original application poll loop is the boss,
in this case libwebsockets is optional and can't be the boss poll
loop

Requested-by: ajandhyala@wms.com
Signed-off-by: Andy Green <andy.green@linaro.org>
FreeBSD compatibility

Seems we just need to take care about __FreeBSD__ along with
__APPLE__ in a couple of places.

Signed-off-by: Matthieu Riviere <matthieu.riviere@leukensis.org>