add #provinces and #province(id) spec
cleanup messy code