Record comprehensions

Support for record comprehensions in the compiler. This pull request is the continuity of #169. 
Record comprehensions are still quite simple.
A simple example:
```
(A+1 suchthat _:A in 1#2#3) 
% 2#3#4
```
And a more complex one:
```
(A if F\=a A if F\=b suchthat F:A in r(a:1#2 b:r(1 2) c:no) if F\=c) 
% r(b:r(1 2))#r(a:1#2)
```