The FBI takes care of criminal investigations noted doled out to other agencies, Secret Service does counterfeiting and credit card fraud. IRS-CID does criminal tax farud and money laundering, ICE does customs violations and immigration law, etc. To have one agency to do everything would be more like the Mexican Federales or Gestapo. Would you really want one federal LE agency? Knowing what we know now would you have wanted Hoover making all the federal LE decsiions for nearly 50 years?
They all have need for long guns at times. They all encounter some very bad people at times.