Add Lesson resource, use generator and faker

Examples with https://laracasts.com/series/incremental-api-development/
Abstract all the abstract abstractions to abstract
Experiment with namespaces
Delete old post migration, modify routes