Added link to build instructions to Readme
Merge pull request #923 from JinShil/master

Added link to build instructions to Readme
Fix Issue 11192 - std.demangle doesn't demangle alias template arguments
Merge pull request #906 from sinkuu/fix_demangle_alias

Issue 11192 - std.demangle doesn't demangle alias template arguments
The GC will now call destructors on heap allocated structs. It is impossible to feasibly implement the invokation of arrays of finalizable structs, due to the inability to know which elements in the array, which may, or may not have been, initialized to begin with. There is also no way to know what the actual length of the array is, you can know how much memory was allocated for it, but not whether there was ever a reference to that point in the array. The destructors for structs in classes are still called as they were previously, which is immediately after the body of the outer class's finalizer.
Added _d_delstruct for use by the delete operator when deleting a pointer to a struct. Also removed the need for a separate array of struct infos by storing the pointer to it at the end of the page for structs allocated by the GC that have finalizers.
Removed the STRUCT_FINALIZE block attribute. Also fixed an issue in my initial implementation of the type info being moved to the end of the page.
Destructors of structs in arrays are now called as well.
As discussed on the PR, removed StructInfo, and replaced all uses of it with TypeInfo_Struct.
I also made the runtime entirely responsible for managing the type info of a finalizable struct. Previously the GC first had to retrieve this info before calling the runtime to do the finalization, even though it's the runtime that determined where to put the type info.
TypeInfo_Struct.destroy needed to check if the pointer is owned by the GC, and if so, have the GC run it's finalizers rather than calling the finalizer directly.