Choosing the right model SRX is a matter of figuring out your capacity needs and comparing these the the platform limits.
Your items 2-6 are simply licenses that you can select from the parts list based on the model you final end up with.
BGP is a supported protocol on all the SRX. The limits on the smaller platform will be with the size of the routing table supported.
# of users is not a helpful figure for determining limits on the device. No firewall company licenses per user anymore so the user count is not really relevant. Instead, what matters is the nature and volume of traffic the user group will generate.
These are factors you will need to quantify or make a guess on there size:
Overall Bandwidth
# of Site-to-site VPN
Bandwidth within VPN
Once you have an estimate for these and any other larger factor for the site you can start with the comparison chart to see where you fit for each of these in the SRX line.
http://www.juniper.net/us/en/products-services/security/srx-series/compare/#a=P110,P220,P300,P550,P1400,P1500,P3400,P3600,P5400,P5600,P5800