Adding Trail.eachTrailBetween/Trail.eachSelfTrailBetween + comprehensive tests