Handle empty ast lists

1. Empty ast lists must be handled by the liverunner. these can happen
when an empty codeblock is propagated to LR
2. Handle multi-assignment single line expressions prior to ssa
transform (a=b=1 must be split)
3. Testcases for multi-assignment single line expressions and empty ast