towards type bounds. need to figure out refl and trans
some fixes
tentative rules for type bounds and self types

trying to come up with a formulation that is compatible with the big-step
proof structure
- subtyping is relative to a path: for a stable path, { type T1..T2 } is reflexive
- types close over environment, so subtyping needs to relate types across
  different environments (for method calls/returns).
  it seems like we can just take the union of the environments, which
  hopefully is compatible with self-types.