First try at making this object a bit more reusable