Starting ESP8266 lua interaction library

Doing this will let me separate the CLI and GUI from each other, by
having unified logic.
Planned API:

* `ESP8266` class
* Can be instantiated
* `.connect(protocol, options)`
* `.upload(data, options)`
* `.run(data, options)`
Transition serial_upload to new API