* osquery services via go-kit
* Visual Studio Code configurations
* create query and pack endpoints
* organizing files more scalably
* modify query and pack endpoints
* delete query and pack endpoints
* get query and pack endpoints
* get all queries and packs endpoints
* add and remove queries from packs
* test stubs
* removing some indirection
* query service tests
* service pack tests
* transport tests
* adding config file flag back
* organizing package kolide
* get queries in pack endpoint
* run tests on 1.7?
* no 1.7 image :(
* typo in circle.yml
- Added all required methods for a UserService
- Added authentication handlers `/api/login` and `/api/logout`
- Added authMiddleware for authentication for `/api/v1/kolide` path
- Added authorization middleware for each endoint
- Added validation middleware for validating API inputs
- Began work on logging middleware
* tests for auth endpoints
* create user test and fatals instead of panics
* more tests
* remove init viper config setting
* stubbing
* more tests
* more tests
* organizing auth and users files
* rest of auth tests
* password reset tests
* renaming campaign to email
* moving session management code to the new kolide/datastore pattern
* removing global configuration variables in favor of config
* moving email operations to package kolide
* moving app to server
* using http.ListenAndServeTLS instead of a method on *gin.Engine
* remove the kolide.go dependency on gin
* create datastore package with New func to create a db connection
* separate creating a user object from saving to db
temporarily pass db around through gin context to compile app
main should create the datastore and pass it in to http handler explicitly instead
* create datastore from config params
* move gorm specific code to gorm.go
* re-export app.NewUser
* test new user
* add User() method for getting a user
temporary, the API will improve once I add filters
refactor test func to use sqlite by default and mysql if available
* add save user
* move some users tests to datastore, temporarily remove user tests from app
* add EnrollHost and test
* move enrollhost to datastore
* all enrollment tests now in datastore
* add datastore_test for re-enroll
* it compiles now...
* move other interfaces to models
* start wrapping errors in database error
* add tests for campaign
* move users to package kolide
* move hosts and passwordrequests
* package kolide
* moving all types to package kolide
* making new osquery endpoints use groob's new pattern
* No more hard deletes
* scaffolding for password reset endpoint
* Ensure password reset state is accounted for in VC checks
* password reset endpoints and data structures
* ability to change password with reset token
* smtp server connection pool management
* stubbing out the sending of the email
* adding mailhog via docker
* HTML emails with confgurable host name
* fixing typo in the comments
* Fixing merge which undid DatabaseError replacement
* documentation in the readme
* webpack shortcut for components
* removing a sneaky merge line that snuck in
* temporary email content api
* tests for password reset flow
* fixing go vet
* comments and making all db use `&value` rather than `reference`
* more correct usage of the errors library and moving email sending to it's own method
* using the wrong error
* fixing email mock object error
* less incorrect error usage
* rebasing and merging
* http constants for status code
* using ParseAndValidateJSON instead of BindJSON
* validate instead of binding in struct tags
* NewFromError instead of New