Merge pull request #73 from xDarkice/master

GLib.Object: Fix FindClassProperty method
gio: Fix up returns type for several GSettings methods
generator: Remove redundant class name from method name

If you move a global method to a class, you often end up with something
like Tag.TagExists(). This will now be automatically renamed to
Tag.Exists().
generator: Implement attribute to hide method parameters

A hidden parameter is dropped from the signature and the default value is filled in.
gio: Fix up first ApplicationFlags enum to be None instead of FlagsNone
Move the fixup tool from the parser to the generator folder

The parser will be going away at some point in the future, but we
will still need the fixup step. And the fixup step is really more
of a preliminary step for the generator anyway.
generator: add a link to the README from the project

This way people who work on the generator using an IDE will see the file
generator: avoid another Implementor suffix hardcode

This "Implementor" suffix was refactored recently (in commit
6cb03440c1a) to be accessed via the ImplementorName property. So we
eliminate now the last occurrence of it in hardcoded form.
generator: provide a GType static property for adapters

In the same way all GLib.Object-derived classes provided by the
generator have a GType static property (i.e. Gtk.Widget), we need
the same for the *Adapter classes, to access their GType without having
an instance of it. (The first use case would be GStreamerSharp's
Gst.Bin.IterateAllByInterface ().)

For this, we cannot simply add the property to all adapter classes
and be done, because it would clash with a property which is already
there, but is non-static, that has the same name and same value
(this property is needed for complying GInterfaceAdapter abstract
class), so we rename this property to GInterfaceGType because
using this name for the static one would not be consistent with the
rest of the classes generated which already provide the static one
with the name "GType".
Clean up .gitignore files
Convert some dynamic casts to static casts

There is no null check after these casts so if they fail they would
generate a NullReferenceException. By changing them to static casts
we would get a InvalidCastException which are much less misleading.
atk: add metadata fixup to avoid crash due to ABI break

The ABI of ATK has been broken recently [1], so the best way
to deal with this is removing the pads from all the interfaces
found by GAPI in the atk namespace.

This avoids that some mono-based apps crash with new version
of Atk (i.e. 2.10.0, the one that Ubuntu 13.10 ships), and
still works for older versions (i.e. 2.8.0, the one that
Ubuntu 13.04 ships).

[1] https://git.gnome.org/browse/atk/commit/?id=b1f70e81ef1d7287dcb2cafa9a115ff5752ece55
glib: install properties before class_init finishes

Recently glib started to warn about the future deprecation of adding
interfaces after class_init, which we fixed here [1].

Now, a similar warning has started to happen for the addition of
properties, example:

(Nereid:23225): GLib-GObject-WARNING **: Attempt to add property __gtksharp_33_Banshee_Widgets_TileView::gtk-sharp-managed-instance after class was initialised

So we need to add them before class_init finishes too, and this
change makes it this way.

[1] https://github.com/mono/gtk-sharp/commit/9ff7ec8b2c6a1727f61601bd934d65a790f5adda
generator: simplify bool logic in Method class

There are two elements repeated in this expression:

(( ((A) || (B)) || (B)) && C)

We can simplify "(A || B) || B" to simply "A || B",
so the result is a bit more readable this way:

(A || B) && C
generator: drop unneeded parameter in WriteLine() call
generator: leverage framework's String.IsNullOrEmpty() call

This makes the code a bit more readable and it is a
micro-optimization.
Merge pull request #80 from knocte/master

atk: add metadata fixup to avoid crash due to ABI break
gio: update MSBuild csproj file to account for recent changes
generator: fix AssemblyName in MSBuild csproj

To be the same as what is generated via Makefiles.
generator: add reference to System.Core in the MSBuild csproj

Extension methods (such as the one we have in XmlElementExtensions.cs)
need to link to System.Runtime.CompilerServices.ExtensionAttribute
class in order to compile. In .NET 3.5, this was part of System.Core
(not mscorlib like in .NET 4.5) [1], so we need to link to it in order
to compile via MSBuild.

[1] http://msdn.microsoft.com/en-us/library/system.runtime.compilerservices.extensionattribute%28v=vs.90%29.aspx