CC3000 stability

goes with https://github.com/tessel/firmware/pull/82

This branch fixes up several things:
* each http request now only uses 1 socket at a time instead of 2. The cc3k has problems freeing up its internal buffers when more than 1 socket is in use.
* axtls now handles the cc3k error codes properly
* switches socket sending to blocking when the CC3k has no buffers left over. This is now done in the socket layer otherwise axtls or c-ares tries to keep sending data which ends up bricking the cc3k. 
* implements different timeouts for different cc3k commands

For some reason ssl alert on close always makes a CC3k buffer get allocated and never freed. Thought it might be because the alert happens right before socket closing, but adding a longer timeout doesn't help. ssl alerts on close is disabled for now.
Define -57 as ENOTCONN? The -57 is returned by the CC and not defined by us.