Sure you want me to do all the work.
First off there are at last count about 300 species though most are not available in the aquarium trade otherwise this would be an awful long post.
Also I'm going to leave out those that would not be suitable for a 20gl tank otherwise this would still be a long post..
Before I start though remember these are messy eaters and produce a lot of waste so a good skimmer is a must.
Most tankmates as far as fish and shrimp would be subject to being eaten as these fish are quite capable of eating fish up to twice their size.
These fish normally eat only live prey ( do not feed freshwater fish ) and most can be weaned to fresh or frozen meaty foods such as silversides, shrimp, squid, eel, etc.
Here are some of the species that would be suitable for your 20gl tank in no particular order:
Antennarius maculatus 4"
A. analis 1"
A. dorehensis 2"
A. pardalis 4"
A. multiocellatus 4.3"
A. bermudensis 2.3"
A. tuberosus 2.7"
A. pauciradiatus 2"
A. strigatus 3"
A. randalli .7"
If you do a search on these names you should be able to get plenty of info.
There are others in the trade that reach about 5" to 6" but would not be appropriate for that size tank.
As far as what retailers or etailers stock I can't help you with that.
Regards,
David Mohr