Major re-write of conditional logic JS. Now conditional logic will apply disabled attributes as well as hiding elements

Signed-off-by: Elliot Condon <e@elliotcondon.com>