Fix lack of exception safety in any component (Closes #16)