rename serviceId to serviceCode
comments
clarify that routes are preferred, not trips.
update board/alight, refactoring and comments
only use linear search for now. cache service codes per TripTimes.
simplify getStop method, some comments
only create board/alight edges when pick/drop type is not 1
Remove odd hybrid boolean/String method, which seems unnecessary.

TransitUtils.handleBoardAlightType simultaneously signals edges that
always block traversal (pickup/drop off type 1) and saves strings as
key-value pairs in the State's extensions map. Either way you look at it
this is a method with odd side effects.

Edges that are never traversed are simply not created, and the "phone
agency" or "coordinate with driver" messages can be derived directly
from the edges and vertices.