Germany's top court has ruled banks cannot charge so-called custody fees for deposits in savings and instant access accounts.