A First Course in Combinatorial Optimization: Preface