[algorithms.greedy] do not fail for empty samples

Do we want to have something like this? Currently, if the greedy is given a list of empty samples, the user gets some numpy error somewhere. One could abort with a meaningfull error message. But since the given initial basis does not have to be empty I would propose to do as in the commit, namely return the given basis and the appropriate reduced discretization etc...