I&#39;ve been looking at this again recently and honestly it&#39;s beginning to feel like I&#39;m reimplementing large parts of web2. Does that mean I&#39;m doing it wrong?<br>