Segment include_modes lists are useless

There are currently a couple of major issues with handling of the exclude_modes and include_modes lists for segments that prevent the latter list from working at all.

First, the results of checking the two lists are or'd together meaning that if a mode isn't in the exclude list the include list is never even checked.

Second, the check of the include list looks for the segment object in the list rather than looking for the mode identifier. That check could never succeed.