SI-6565 Adds missing flag values to reflection API

Among the flags requested by our users, the most popular are definitely
PARAMACCESSOR and CASEACCESSOR. Among other things that are missing in
2.10.x are SYNTHETIC and its close friend ARTIFACT. Apparently, SYNTHETIC
was was added somewhen during the 2.11.0-M* development cycle, so I only
has to introduce ARTIFACT.

There was also METHOD as requested by Paul in https://github.com/xeno-by/declosurify/blob/ce6c55b04086c755102227dd8124b0bf0dac46e1/src/main/scala/macros.scala#L102,
but the absence of that one is compensated by the fact that it’s only needed
when manually creating symbols, and for that we already have Symbol.newMethodSymbol.

This doesn't remove the necessity to see SI-6267 through (read the recently
updated issue description for more information!), but that'd be a significant
change, so let's delay it until better times.
SI-7533 Adds Symbol.isAbstract

Amazingly enough, we've missed the fact that non-type symbols can also
be abstract. Having been enlightened by this, I'm exposing isDeferred
and merging it along with isAbstractType and isAbstractClass into the
unified Symbol.isAbstract method.
SI-6733 LOCAL, isLocal, and private[this]

Due to an unfortunate name collision, internal.Symbols#Symbol.isLocal
means something different from Flag.LOCAL. Therefore api.Symbols#Symbol.isLocal
was directly violating its documentation.

Since we can’t give api#isLocal an implementation different from internal#isLocal,
we have to rename, and for that occasion I have come up with names
api#isPrivateThis and api#isProtectedThis, which in my opinion suits the
public API better than internal#isPrivateLocal and internal#isProtectedLocal.

Given the extraordinary circumstances of having no way for api#isLocal
to work correctly, I’m forced to remove api#isLocal without a deprecation
notice, exercising our right to break experimental APIs, something that
we have never done before for reflection or macros. This is sad.