what is factoring? and the types of factoring?