Why are the majority of cleaning solutions basic?
Dishwashing agents are usually anionic detergents—i.e. they are alkylbenzenesulfonates.
They consist of two parts:  


Sulfonate part which is hydrophilic(water loving i.e. dissolves in water)  
Alkylbenzene part which is lipophilic(fat loving i.e dissolves in fats and oils)  


Thus, when in water, they dissociate to give $\ce{RSO3-}$ and $\ce{Na+}$ .  $\ce{Na+}$ is from a strong base (making it a weak conjugate acid), while $\ce{RSO3-}$ is from a weak acid (making it a weak conjugate base), thus the resulting solution is basic.  

The sulphonate ion bonds to water, while alkylbenzene bonds to oil, protein, or fat . Thus fats, oils, proteins, and grease dissolve in water  

The following is the mechnism of a dishwashing agent:

   

These are the ingreadients mentioned on a dishwashing bottle in my house:



As you can see, sodium dodecylbenzenesulphonate (an alkylbenzenesulfonate) is one of the main ingredients.  




  Do acid make good cleaning solutions as well?


Yes they can make a good cleaning solution, but not as a dishwashing agent.  

According to Wikipedia ,


  Acidic washing agents are mainly used for removal of inorganic deposits like scaling. The active ingredients are normally strong mineral acids and chelants. Often, there are added surfactants and corrosion inhibitors.