added achievements functionality