fix warning (undefined behavior)
typo in comment
extract several .hpp files from clay.hpp
Implement asExpression and as arguments/operator inc tests
Merge loops in desugarAsOverload
Remove as expression
Add primop/pattern 'as' overloads.
Add hasAsExpression default init in Lambda.
Fix unsigned/int comparison warning in codegen.
Fix -Wsign-conversion warnings.
Remove couple of unneccessary templates in evaluator.
Use size_t instead of unsigned for many loop variables.
Fix FormalArg varArg init.
Fix hirestimer init order.
pass optimization level to TargetMachine correctly and remove unused parameters
Fix -Wconversion warnings
Merge remote-tracking branch 'jckarter/master' into signed
Remove -Wconversion flag
disable int bit-mask fields

This is work around clang/llvm 3.2 bug:
http://llvm.org/bugs/show_bug.cgi?id=14880
Merge pull request #470 from crabtw/optlevel

pass optimization level to TargetMachine correctly
Merge pull request #471 from agemogolk/signed

Fix implicit conversion warnings
fix objectHash signature
"throw exception in context" statement

Like this:

```
throw GenericException("hi there") in ExceptionContext();
```
rethrow statement

Syntax is:

```
throw;
```

Can be used inside catch block. Rethrow statement preserves context
(file, line and backtrace of rethrown exception).

Unlike C++, throw; statement cannot be invoked from a function that
is invoked from a catch block.
Fix conversion & sign warnings
Record is Copyable? or Movable? only if all its fields are