Added and and or semantic actions
Added not and tuple support