Parse XML-based Shakespeare script to assign multiple roles without any overlap