M3 screws of any length available, as well as washers and nuts. 8mm,10mm, 16mm, and 20mm lengths have all collectively come into use for my upgrades. If you prefer HD for shopping for hardware (as do I), buy all of these up. As you upgrade, you will find more and more uses for these. Then you will eventually find M3 indoctrinated into your designs 
M5 will be needed for the Y axis brackets. You may want to buy various lenghts as the extruder tension arm and Y bearing may use different length depending on your personal desires for the upgrades. Personally, I prefer shorter M5 screws for the Y brackets since I used to fined my extruder slamming into them. Screw length, bracket design, and gCode customization can fix this.
When upgrading to your E3D, you will either need to flip your Z tab screw (only if you use SD2/3), or print a longer tab. The screws used will be M3x10mm(length); then use a 20mm M3 as the Z endstop screw
For Lawsy carriages....all M3. As well as MK5 (Lawsy) and MK6 (wardjr; shared by me), pillow brackets, blah blach blah...
The point is, buy up M3 every chance you get. The bed platform screws are M4, and the X carriages bolts are of a different size I never remember...10-24? Someone please correct me on this. LM8UU linear bearings will be used galore for the carriage mod.
Printit Mason and Printit Horizon printers
Multiple SD2s- Bulldog XL, E3D v5/v6/Lite6, Volcano, Hobb Goblin, Titan, .9 motor, Lawsy carriages, direct Y drive, fishing line...the list goes on
Filawinder and Filastruder #1870.....worth every penny!