If the car runs fine from a solenoid jump then it sounds like it might be a switch issue. Does your key return to the run position after you crank the car, if its hanging up in the start position then its going to leave the starter running. As stated before I would make sure the ignition switch is wired properly, then I would make sure the switch itself is working properly, I've replaced two in my car and every parts car I have has broken switches. They don't hold up well. you can always bypass the switch and jump the wires and see if it cranks normally then, if so the switch is your culpret