Does "cleared into the Bravo at 3500" mean I must wait until I hit 3500 before entering it?
On one hand, they know my heading and altitude, so I assume that I should continue straight on, entering the Class B in my climb and level out at 3500 feet, which I have done often with no consequences. 


This is what the controller wants you to do.  It's slightly sloppy phraseology - "Cleared into Bravo, climb and maintain 3500" would be better.  But what she said is not really ambiguous in any practical way.  She would definitely not be expecting you to turn away, then climb, then turn back toward the B.