Genetic fingerprinting: past, present and future