exercise 7.3

Squashed commit of the following:

commit 35031930b12e1f6ab01ebdae4b7dea5069195235
Author: Ralf Vogler <ralf.vogler@gmail.com>
Date:   Fri Nov 28 18:32:53 2014 +0100

    exercise 7.3

commit 5870f1ed7c45c69d04430add4199c475ac410cbc
Author: Ralf Vogler <ralf.vogler@gmail.com>
Date:   Fri Nov 28 18:13:24 2014 +0100

    implement UnionFind

commit 1361f4ee1e3d224f83ce573b6f9da8402a60eddd
Author: Ralf Vogler <ralf.vogler@gmail.com>
Date:   Fri Nov 28 14:27:42 2014 +0100

    union*

commit 6349bc7b6521eaeda7cdb8b2078faa514f611f75
Author: Ralf Vogler <ralf.vogler@gmail.com>
Date:   Thu Nov 27 22:24:30 2014 +0100

    fix for cfg.sh from Patrick Werneck

commit ac70ab1a4159cf51536aca6214357d6bb04b686c
Author: Ralf Vogler <ralf.vogler@gmail.com>
Date:   Thu Nov 27 19:17:53 2014 +0100

    flow insensitive alias analysis using UnionFind from ocaml containers