code: function getBoardList(callback) {
      var jsonDir = Espruino.Config.BOARD_JSON_URL;
  
      // ensure jsonDir ends with slash
      if (jsonDir.indexOf('/', jsonDir.length - 1) === -1) {
        jsonDir += '/';
      }
  
      Espruino.Core.Utils.getJSONURL(jsonDir + "boards.json", function(boards){
        // now load all the individual JSON files
        var promises = [];
        for (var boardId in boards) {
          promises.push((function() {
            var id = boardId;
            return new Promise(function(resolve, reject) {
              Espruino.Core.Utils.getJSONURL(jsonDir + boards[boardId].json, function (data) {
                boards[id]["json"] = data;
                resolve();
              });
            });
          })());
        }
  
        // When all are loaded, load the callback
        Promise.all(promises).then(function() {
          callback(boards);
        });
      });
    }
docs: Get a list of boards that we know about