do not print header without records in SamIO, raise issues in aligner when len(reference) is not a multiple of 3, listen to NCPU env var in bealign