Hey buddy.... I had the same exact thing. Before you tear into everything, I would try this first:
Locate the ignition wire to the starter selenoid. There is a plastic connector that is prone to shorts, as it is subject to heat, oil, and dirt. Cut off the plastic connector, crimp on a large hoop, put back on starter. ( you'll have to take both halves of the connector off... the part on the starter just screws off with a phillips).
I had my starter bench tested, it tested fine...installed it on Jeep... no dice. Wasn't till I removed that stupid, pointless connector did it turn over right away. Good luck, let me know if you try it and how it worked out