The selection of housekeeipng gene depends on your gene of interest, if it is organelle specific or cytosolic or membrane protein or nuclear protein. For the cellular or cytosolic protein, 16S rRNA or GAPDH or tubulin or beta-actin can be suitable option; for nuclear protein, you can use TBP or Histone (H2B or H3) or laminin B1; depends on the type of your experimental genes of interest. Find out the attachments.
There is no "best" reference gene, there are only reference genes that are stable under your experimental conditions/groups which need to be determined empirically. You should take several candidate genes and run a reference gene stability study to determine which genes are suitable for your study. I would suggest that these genes are somewhat abundant as late Ct genes may have large deviations which would make them hard to quantify. Two of the most popular methods include NormFinder and GeNorm though other methods exist. I would not rely on GAPDH and B-actin as these genes can be unstable in your experimental group so never make the assumption that they are unless you have shown it to be so.
I recommend you this database "Housekeeping and Reference Transcript Atlas" (www.housekeeping.unicamp.br) for human and mouse candidate reference transcripts. It offers tissue/cell (102 human tissues and 22 mouse tissues at this moment) selective candidate reference transcripts for qPCR normalization. Interestingly, some validated ready to use primers are also available in this database.