Generalize object and type parameter bounds

An RFC summarizing type system changes that close up rust-lang/rust#5723 and related bugs.
Given that internally the compiler will handle multiple bounds and the syntax must allow for multiple bounds (one lifetime and multiple trait), this restriction seems artificial and not really a simplification at all (in the sense that you are adding a case to a rule).