Format special sphinx tags when at the start of a line

The Ice parser removes blank lines which breaks Sphinx docs
Added a parser for slice @tags
User SliceCommentParser for parsing comments
Added a parser for internal links ([]), assumes all links are to classes
Added [test.link] to testParser
Added formatType() calls around each output type
Correct cpp compilation rule
Combine automatically found function parameters with comment descriptions.

Also moved link handling into a separate class
Moved LinkParser into a separate file
Rewrote Makefile
Handle empty param type. Link exceptions to class.
Use conditional variables to check for ICE_HOME and MCPP_HOME
Small cleanups