docs: function toAlphabet(num, alphabet) {
  				var base = alphabet.length;
  				var digits = [];	// these will be in reverse order since arrays are stacks
  
  				// execute at least once, even if num is 0, since we should return the '0':
  				do {
  					digits.push(num % base);	// TODO handle negatives properly?
  					num = Math.floor(num / base);
  				} while (num > 0);
  
  				var chars = [];
  				while (digits.length) {
  					chars.push(alphabet[digits.pop()]);
  				}
  				return chars.join('');
  			}