Preparing audio data for FFT
I know the signal could be passed through a low pass filter, and then windowed before the FFT.


Yes, it could be, and it's usually advisable to use a window, but these are not just things you do blindly because you heard about them. Low passing the data will alter it in ways you might not want to. It might be useful, or it might not -- depends on your application. It will reduce the amount of high frequencies represented in your FFT results. Is that what you want? Maybe, maybe not. Windowing is useful because it reduces (but does not eliminate) frequency-domain distortion caused by separating your data into chunks. Usually you want that, but there are trade-offs (my explanation is an over-simplification).


  The sample rate is 44100.00, what low pass filter is needed for this, does the analog to digital conversion not run it through a low pass filter before converting it?


The input must be filtered before the digital conversion (and usually this is done for you). There is no way to filter it after to achieve the same effect, so even if it's not taken care of for you, you might as well forget about it. Chances are, your DA Converter does a halfway decent job of this, though.


  How exactly does a window apply to real time sample input of 512 samples? Is a window not the same as a filter?


A window and a filter are different, as explained above.


  I have also read that the signal can be run through the FFT twice, why exactly is this done and is it necessary for this data?


You haven't really told us anything about what you want to do with this data, but no, it's highly unusual to do two FFTs.


  I would like to slowly build this up to do spectral analysis etc. Is this done directly on the FFT bin data?


More or less. I suggest you read up on filtering, windowing, fourier analysis on Wikipedia. This blog post might also help.