How can I train my self to know what sounds like legato or picked notes, how much vibrato is used in certain notes.

Figuring out rhythm riffs are kind of harder to do by ear also. Not to mention very fast shredding licks.

I've used audacity to slow down guitar tracks, would that be the best way to figure out a song by ear?
yeah slowing it down withouth changing the pitch is the best way to learn things by ear ive found

it also helps if you know the genre better so you know what scales and chords and progressions they are bound to be using
You hear pick attack on picked notes, legato has a smoother attack.

One thing that has helped me a lot to play by ear is learning music theory.
This might be very informal advice because I don't exactly know the theory behind it but...The first thing I usually do when figuring out a song by ear is figure out the key to that song. I do this by going up and down the minor pentatonic in the first position for many different keys until i find one that "sounds right". Because a lot of songs follow similar chord progressions, knowing the key will help you know what chords/notes are "in play".