Expectations for a top Grad school for CS

I am an incoming freshman at the University of New Mexico for Fall 2020. I will be majoring in CS (school of engineering). Though I got into some top schools like Rice, UC Berkeley, I have chosen to attend UNM. My goal is to graduate from UNM in three years. Before I start college I have a few questions on grad school, so that I can further succeed at college.

 1. I want to attend one of the top schools like Rice, UNM, UC Berkeley ...etc, what 
    activities in college will make it easier to get into those schools? Will my application 
    be stronger to work an internship for all the 3 years?
 2. How important is student associations and groups. Do they have a weight in terms of 
     grad school admissions? Does leadership positions in these groups help?
 3. Are GRE subject tests crucial? Should I take them? 
 4. What are some things we can do to help make my application differ from others?
 5. When is the best time to start applying to schools (assuming I will be able to 
     graduate in 3 years).

I understand that a high GPA and an explicable GRE score are the basis of admission, but I want to know what else I could do to make my application stronger.