project: test cases for child collection mapping bug

Reproduces queryable mapping bug described at
http://stackoverflow.com/q/20046521/311289
project: fix mapping bug

add a special case to see if we're trying to map between two
collection-ish objects of the same type, and skips searching for a
typemap for pairs like `TypePair(String,String)`

Still doesn't work with Linq-to-entities, as some later special cases
add a `ToList` (which linq-to-entities won't support).

A long term fix would be to refactor the projection as two phases:

1. selecting the right properties into an anonymous class
1. calling `AsEnumerable` to get linq-to-entities to run the query
1. mapping from the anonymous class into to final destination type
Merge branch 'queryable-mapping-bug' into accel