Following feature

== API

* GET /api/following/:userId/followers
* GET /api/following/:userId/following
* POST /api/following/:userId/follow
* POST /api/following/:userId/unfollow

== Search

* /api/search/followers/:userId
* /api/search/following/:userId

== Activity

* New activity: following-follow
* New associations: The following activities will route to the followers:
** Actor's followers will get the activity when they create content, group, discussion
** If the user becomes a member of a content item, group, discussion, followers get activity

== Other

* Activity Refactored. Introduced "associations" which lets the routing spec become configuration rather than an implementation
* Routing spec moves up to activity level while producing, transforming, and propagation stays at the entity level
* Improved unit tests in some areas to cover new privacy issues that "following" unlocks that was awkward to achieve before

== Out-Scoped

* I finally created an AuthzConstants.visibility and AuthzConstants.joinable properties for centralized visibility settings, but needs to be plastered all over the code base
  * Outscoping because the activity+following changes are huge enough as is, will submit a mundane PR for visibility on its own