Rendering Improvements and .Net 3.5 Support

OK, let's try this again.
- I merged all the changes I could find, and GitHub thinks they can be merged.  Github also seems to be showing all the proper commits in the pull request.
- I confirmed that the merged changes compile.
- I converted several of the property accessors to use the attribute dictionary.  Any of the remaining items that don't properly raise events (or use the attribute dictionary) were that way from the start.
- This set of commits includes much better support for tspans than the original implementation I attempted including different fill colors, fonts, font parameters, positions, etc.
- Also included are the original rendering improvements including:
  - Added ability to parse colors such as rgb(#%, #%, #%)
  - Fix issues with calculating the next coordinate after a close figure and a relative move
  - Allow the std. deviation in a gaussian blur to be a float.
  - Allow "none" for a unit collection
  - Allow a marker to scale with either the stroke width or the use a custom coordinate space
  - Allow gradients to reference other gradients defined later in the SVG
  - Fix href attribute bug on the SVG use element
  - Adding a descendants convenience methods (similar to the Xml to Linq API)
  - Removed non-functional property from the SvgDescription class to encourage use of the Content property instead

Let me know if you need anything else.