We have thought about moving to use package-lock.json the way NPM suggests, and at the same time have begun having issues with Travis caches. To address both at the same time, remove the cache from Travis, and make up the time by moving to package-lock.json + npm ci for install.
* First microbit gui tests
* Fixed JSONRPC inheritance. Renamed ScratchBLE/ScratchBT files. Removed ScratchBT test code from Microbit extension. Renamed addLine to log.
* Fixed log comments. Removed addLine from Microbit.
* Adding auto-connect to Microbit at extension loading. Adding hack for displayText block to Scratch-Link.
* Resolved merge conflicts and brought in latest microbit extension example code.
* Updated microbit write tests for displayText and displaySymbol blocks. Some linting.
* Some linting and adding of BLE Characteristic consts.
* Linting fixes.
* Moving micro:bit device connection code all to the MicroBit class, decoupling Scratch3MicroBitBlocks from connection code.
* Removing old disconenct handlers from MicroBit class. Moved service into new BLEUUID data structure.
* Renamed _write to _send. Moved all BLE encoding concerns to the _send method.
* Using the util log. Some linting.
* Added _read method to MicroBit class. Renamed _send to _write.
* Some linting and formatting comments.
* First pass at peripheral chooser pattern for ScratchBLE.
* Testing characteristicDidChange events, and some changes to ScratchBLE on ready events.
* Refactoring work on PeripheralChooser and ScratchBLE.
* Some variable renaming and method signature stubs.
* Peripheral chooser method signatures.
* Moved base64 encoding/decoding to util. Some method signature formatting.
* Adding test stubs for new util and io classes.
* Adding test stub for MicroBit extension.
* Clean up for PR.
* Clean up for PR.
* Final cleanup for PR.
* Removed logging to console.
* Adding 'btoa' and 'atob' node modules and using them in Base64Util.
Added formatMessage to the name attribute for:
* music
* pen
* translate
* video motion
Skipped speak extension - trademarked name
Skipped extensions that are not yet localized at all.
- yield a thread loop or tick in looks_switchbackdroptoandwait
If all threads broadcastAndWait is watching are "waiting" for a future
frame, yield until the next tick so event_broadcastandwait also defers
to a future frame.