For the partial application: Deactivate Auto Smooth in Properties > Data > Normals > Autosmooth for every mesh in blender and afterwards apply an edge split modifier for all meshes.
For the materials: Blender Cycles (nobody likes to use Blender Internal ;) ) uses materials that are defined by so called nodes. As there is no 1:1 translation between the material format used by .obj and those nodes, the materials look bad and transparent materials (glass e.g.) are barely transparent. To fix this you will have to define your own node materials for every .obj material. I'm thinking about writing a blender script to convert most of the materials automatically, but I fear it won't work for all.