Tensor algebras of product systems and their C⁎-envelopes