Added guarded equations and simple pattern match.