I would say go with 5/3/1.
Use this version, it includes Power Cleans-
You can include box jumps and things of the like to improve explosiveness and speed. Also remember to do every rep as explosively as possible.
As far as gaining weight it is really dependent on your height. Up there a guy said you should be 200, but for instance if you were 5’3 at that weight you would either be super jacked or fat. More so it is up to what you are comfortable with, do not gain 50 pounds of sludge just because you want to push 100 more pounds. Because remember, you still want to look like you workout.
Focus on getting 2 grams of protein per pound of body weight and eat the rest normally for your first week, and keep notes of all that you eat, so you can adjust daily calories weekly depending on how much you gain. Weigh yourself daily, but only pay attention to the amount gained weekly. I say daily in case you are super bloated on your weekly weigh in day you know that it is misleading. You could go to 2 pounds a week or be careful and go for .5 pounds per week. You can either be really careful or you can risk gaining more fat than muscle.
As said above before you delve into a program, make goals, short term and long term, always meet the short term. For instance a short term would be put 100 pound on your squat and dead and 50 on your bench. It could also be to jump to a reasonable height or have your arms measure an inch bigger. A long term goal could maybe be jump onto a 50 inch box, sprint the 40 yrd dash at an NFL level, or total 2,000 pounds in a raw meet. The point is that as you develop as a lifter the long term goal will change, but you will still be meeting the short term goals.
I am sick, so do not blame me for writing a whole T-Nation article in the forums. hah