progress. also, documentation (using JSDoc 3)