Alastair Campbell brands Boris Johnson a 'useless, lying crook'