remove inheritance from ghost
adding explicit strategies
adding charge and damage detection strategies