refactor forEach

- add opposite function of forward
- use new getForwardedValue in ForEach
- delete ref() and byRef() to prefer forward() usage