Banach function spaces done right