add multiple range support to Group
use list instead of map for results
rewrite database for two fast lookup types