Vector-valued Reproducing Kernel Banach Spaces with Applications to Multi-task Learning