code: static long bytesToLong(byte[] bytes, int offset) {
          long m = 0;
          for (int i = 0; i < 8; i++) {
              m |= ((((long) bytes[i + offset]) & 0xff) << (8 * i));
          }
          return m;
      }
docs: Converts a chunk of 8 bytes to a number in little endian.
  
  Accepts an offset to determine where the chunk begins.
  
  @param bytes
  the byte array containing our bytes to convert.
  @param offset
  the index to start at when chunking bytes.
  @return
  a long representation, in little endian.