reworking linq for Option and Try to properly support linq comprehensions