Support when 1.8 in addition to when 2.0

when 2.0 is perferred. Some unit test will fail with when 1.8, but the
code should be compatible. This change is mostly being made for
dependency resolution with libs that require when ~1.