It sounds like you may be new to Python, since you say "I triple checked the syntax of all the file and there was no single syntax error, there is no additional imports mentioned in the tutorial."
Be aware that in Python, many name-related errors that would be caught at compile time in languages like C++ are caught at runtime instead. This tripped me up a little when I started using Python. Runtime errors could simply be indicating a mere typo, etc. (If this sounds nasty, don't worry-- there's free tools out there to check your program as a compiler for stuff like that some other languages would)
Is Category defined in the same file that that line appears in?
If not, you must specifically import the name Category. Suppose Category is defined in another file, argh.py.
import argh
is no good.
You would need to do
from argh import Category
(or alternatively change your code to reference argh.Category)
Anyway, your question can't really be answered better than that unless you give more information. That line isn't the problem. The problem is probably with the Category definition. Where is the definition of Category? Category is another model class. There should be code like
class Category:
#....
And it should either be in the same file, or if it's in a file called "prison.py" then the file you are working on should contain
from prison import Category