implemented program disassembler.
cleanup