Would probably be nicer if this was compassable via a trait instead of inheritance. Then it could be used on all kinds of objects.