Fixed a crash with serpent; some gui improvements useful for testing.

Serpent compilation made AlethZero crash when parsing strings containing non-ascii characters.
Example:

    code:
        a = "però"

This was caused by a negative number being passed to intToDecimal().
I fixed it by casting to unsigned char before passing it to that function.
But then I noticed that the way such function is implemented and used makes no sense with a signed int argument, therefore I changed it to unsigned, and renamed the function (and its opposite companion) to unsignedToDecimal() in order to clarify what kind of integer it expects.

***

In order to help me better test the compiler and the VM, I also made the "code" widget selectable and copiable, and I added a debug menu entry to optionally disable compiler optimization.