While I agree in theory, boxing a null like that can have severe garbage collection implications. If every core function that required a simple two or three state response returned a boxed object then it also adds a requirement for the GC to "throw away" the object when necessary. The more trash the GC needs to clean up = the more time the GC uses cleaning up.
I'd be careful - that's all. I've seen systems which have done exactly this for core pieces of logic and they have suffered miserably during long running processes.
Mind you I'm referring to Java/.NET here - I'm not familiar with Scala's subsystem so can't comment on that...