Hint: There is a current similiar thread open Clean Library question. You might want to have a look at this as well.