js/disassembler: Define addresses once
js/disassembler: decode() returns an assoc array

This allows it to return more than just the instructions.
js/disassembler: pad() supports suffix and prefix
js/disassembler: Vertically align instruction args
js/disassembler: Add the ability to warn user

And disable visualiation.
js/disassembler: Implement extended instruction set

From coursework 2.
js/disassembler: Implement interrupts
disassembler: Make 'assembly' tab default
js/disassembler: Use different label names for irq

...and subroutines.
js/disassembler: Prefix jQuery vars with '$'
disassembler: Show a single table of results
js/disassembler: Fix error message display
js/disassembler: Split labels onto separate lines
disassembler: Don't allow selection of addresses
disassembler: Add a switch to enable interrupts
js/disassembler: Apply idtLength offset to chart
js/disassembler: Hide diagram if we can't show it
js/disassembler: Only add DATA section if required
disassembler: Allow vertical resizing of input
js/disassembler: Define a hex coded address