History-friendly models: methods and fundamentals