changed some behavior of switch syntax, renamed old switch to infer_syntax, now can manually force a switch (which is faster in most cases).