A universal source coding problem is considered in the finite blocklength regime for stationary memoryless sources. A new coding scheme is presented that encodes based on the type class size and the empirical support set of the sequence. It is shown that there is no loss in dispersion relative to the case when the source distribution is known. A new bound is obtained on the third order asymptotic coding rate. It is also shown that for binary sources, a universal encoder takes at most one extra bit to encode a sequence as compared to an encoder that knows the distribution. Numerical results are presented for finite blocklengths comparing the proposed coding scheme with a variety of coding schemes including Lempel-Ziv.