Re-implementation of R/qtl with clean code, aimed at high-density, high-throughput data