Made ordering preserved in On statements, Added a static assert for function signatures (that does not yet work)