London mayor says 'ugly, self-defeating and stupid' spikes outside luxury flats are not the answer to rough sleeping.