William Herbert (British Army officer)