first instructions work

Added the basic identity and delay instructions. The former simply returns its
operand and may be used to assign one signal to another (%a = %b), the latter
does the same but with an added delay (%a = delay 2ns %b). The simulation
properly executes the instructions and creates the desired waveforms. There is,
however, quite a shortcoming in the current design of the Assembly. It seems
that runtime type information is a rather bad way of identifying instructions.
I suspect it to be easier if all expressions could be represented by one single
class, e.g. through { instruction, immediate, operand, operand }. This would
greatly simplify the corresponding code.