Add optional startCodepoint parameter and associated tests