Added BuffMonitor

Moved buff retrieval to BuffMonitor type, refactored several utility
methods.