While not the most fun task, this could be a good next step.
Something like the following:
isdifferentiable(::L1Penalty) = false
isdifferentiable(::L1Penalty, at) = at != 0
isconvex(::L1Penalty) = true
isstrictlyconvex(::L1Penalty) = false
isstronglyconvex(::L1Penalty) = false