Add context parameter to Arrays.fold and Arrays.reduce
Rewrite Option for consistency and simplicity

- follows Scala Option more consistently without unclear influences from
  Haskell's Maybe