From LookUp: Adjective

  1. Slang Of software: poorly designed, especially unnecessarily or unintentionally complex; containing redundant code.

Cruft is a jargon word for anything that is left over, redundant and getting in the way. It is used particularly for defective, superseded, useless, superfluous, or dysfunctional elements in computer software.