Non-linear theory of Banach spaces