A sequence consensus algorithm implementation based on using directed acyclic graphs to encode multiple sequence alignment