Demonstrate: Ceylon type system is Turing complete

The powerOfTwo package contains a Turing machine that tests if the
length of an input word is a power of two. The words x, xx, xxxx,
xxxxxxxx etc. are accepted by the Turing machine, but the words xxx,
xxxxxx, etc. are not.

The only restriction in the Ceylon type system’s Turing completeness is
that, to the best of my knowledge, it is impossible to implement a loop
within the type system, which means that you have to construct an
external feedback loop. This loop can be seen in demo.ceylon. If you
know an upper boundary for the running time of a Turing machine on your
starting word – as is the case for the particular Turing machine
demonstrated here – then you simply use as many iterations as might be
needed at most, according to that boundary; otherwise, you can never be
sure if the Turing machine entered an infinite loop or if you just need
to give it some more iterations. However, this is not really a
restriction of the Ceylon type system, but rather of Turing machines in
general (see the distinction between semi- and decidable sets, and the
halting problem). The only difference is that regular Turing machines
don’t stopon their own after some iterations – let’s call that a
watchdog, and declare it a feature :D

@gavinking and @rosstate might be interested in this :)