You can take step 2 CS and CK anytime after step 1. Many foreign grad take step 1, 2 and 3 right after one another. Thats why u may have seen 99/99/99 on many posts. Its best done at least after your cores (3rd year) however if u are a good test taker and have the time ... take it at any time. The debate at when to take CK is huge but in my opinion whenever u can.
Books there are many
I love the toronto notes great threw out rotations.