I have been pretty happy with my second gen FIIO X3. Uses microSD card (up to 128 GB) for storage. Does take some time to index, and it needs to reindex every startup. I have about 60GB on the card at present and my library is always growing. Within a minute or so, even while indexing, you can do a sort of page down between albums.
I chose against iPod touch because I already have an iPhone and getting one with enough storage to contain my library was more costly than I thought was reasonable. $299 for new 64 GB. Not sure about refurb as right now they only have 32 GB. $400 for a new 128 GB for $399? To play music through a marginally ok HU? No way. The FIIO can be had for at most $170 (without SD card). Add the 128 GB microSD card and you are looking at 128 GB of storage for $210 or so and the sound quality is amazing.