added weekend? method and minor refactor