App architecure + models