> Another naive question.
> Why do we have a separate MultiTaskElasticNet? If ElasticNet itself
supports multitask output.

because MultiTaskElasticNet is a truly multi task estimator ie. the
estimator is fitted on all tasks jointly.
Have a look at:

http://scikit-learn.org/stable/auto_examples/linear_model/plot_multi_task_lasso_support.html

any chance I can manage to convince you that this support for multiple
outputs in ElasticNetCV
is not useful?

I would find the addition of a MultiTaskElasticNetCV and MultiTaskLassoCV
more useful

also there is this bug :

https://github.com/scikit-learn/scikit-learn/issues/2526

that I cannot find the time to address. Basically the issue is that the
alpha grid is not correct
in the sparse case.