`ScalaPresentationCompilerProxy.apply` should never return `Some(null)`

The former implementation of `ScalaPresentationCompilerProxy.apply` could
return `Some(null)` if the passed `op` returned `null`. This was not the
intended semantic.

A different issue I'm thinking about is how I can provide an overload of
`ScalaPresentationCompiler.apply` to allow to pass either an `op` of type
`ScalaPresentationCompiler => U` or `ScalaPresentationCompiler => Option[U]`.
The simplest way to do so would be to have two different methods, but I want to
think about this a bit more (in fact, I'm still not convinced we shouldn't
simply keep the current implementation).