Remove a bunch of checks of data in the basic hmm functions

 - We pass the true genotypes, so they shouldn't be invalid; the extra
   checks just slow things down.

 - Invalid "observed" genotypes can just be treated as missing
   (and should have been removed in advance)

 - Now the check_geno function returns true or false; never an error.
   This makes it more useful (e.g., to check the genotype data from R!)

 - In the init, step, nrec functions, I left in code to check for valid
   genotypes (and give an error if not), but use "#ifdef DEBUG" so that
   it's not included (but _could_ be included for debugging purposes.

 - Had to revise a bunch of the tests: removing ones that were expected
   to give an error, looking for true/false from check_geno, and
   expecting emit to return 0 if the observed genotype is invalid
vignette developer.Rmd -> developer_guide.Rmd
input_files vignette: super small change
Initial effort on a user guide
Add count_invalid_genotypes function

 - Also move crosstype_supported function to check_cross
consolidate test-check_cross and test-check_crosstype
consolidate check_cross and check_crosstype
speed up tests of estmap by not testing _all_ chromoeoms