5 scala books you must read