Recent developments in Nanoparticles Synthesis, Preparation and Stability of Nanofluids