This commit: * changes the type of all output variables to logic * splits variable declaration and assignment * declares variables before modules that use the variables