Add Attendance tracking

Close #25. Close #26.
Style/Blocks: Avoid using {...} for multi-line blocks.