better frequency table

use buffered reader. don't keep string