Fixing `in` definition in prelude
Adding examples.

  - Also making `len` a measure for every value.
Addint keyIn as invariant for object types

  - E.g { x: string } ~> { { x:string } | keyIn("x",v) }
test for doing poly-inst for HOF arguments
Update poly-01.ts
Merge branch 'master' into poly
Instantiating polymorphic function arguments
Adding a few more examples.
Adding a few more tests.
cleanup.js works for folders as well
Changes in user casting mechanism
Getting rid of kVarInst option
Formulating cast as function call

  - To: forall T . (T, T) => T
Cleaning up
Some more fixes
Resoring condtional expressions.
Moving failing test to other branch
Merge branch 'poly' into in_operator

Conflicts:
	src/Language/Nano/Liquid/CGMonad.hs
	src/Language/Nano/Typecheck/Typecheck.hs
Adding flag for extra invariants.

  - For now it only toggles the use of 'keyIn'
Adding test directory specific flags in regrtest.

  - Also, currently no need for the annoying '-f' flag in liquid.