Fix incorrect translation of unbracketed then/else (fixes #141, #182)

Fixes an issue in translating "if (condition) {} else {something}" to "unless (condition) something", wherein there is no check if the then/else nodes are blocks. This causes unbracketed expressions to be erroneously interpreted as empty blocks. Fixes #141, #182.