C gen test case. fix #39, generating correct code for while loops.
C gen support for functions (including tupled and recursive). close #41.

Right now this will emit nested functions, so the generated code
needs to be compiled with gcc -fnested-functions, which is only
available in C but not in C++ mode.

Going forward, we should implement proper lambda lifting, as
already done for Delite kernels.
fix #40. ForwardTransformer no longer performs transitive symbol lookup
fix #38. sensible errors message for uninitialized effect context
unchecked for C
correct type info for Unchecked
top level functions and forward declarations for C gen
Merge branch 'develop' into wip-scala2.10

Conflicts:
	src/internal/Effects.scala
update to 2.10.0