Block Copolymers in Solution: Fundamentals and Applications