Defining tensors as maps is fine, but there is an asymmetry in this view that I don't like much. One starts with something "static", say, vectors. Then, one defines forms and tensors as maps of maps etc. of the vectors into numbers. The numbers are "static", too. I like that in the "static" view, all of them, numbers (scalars), vectors, forms, tensors are entities on equal footing which "interact" through operations.
Moreover, some operations, e.g., contraction, are defined using basis, i.e., components, albeit being basis independent. Frame independent component notation has other advantages, as MTW admits here:
So, why not to start with this view?
The mapping then is just another contraction. And it does not matter if a tensor maps a vector or a vector maps a tensor, they just together contract to make a number or something else.