Enforce segment naming via Branch constructor

All branch segments are expected to be alphanumeric strings in all
lowercase.