diff --git a/CHANGELOG.md b/CHANGELOG.md
index 955766d..e235e6f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -6,6 +6,15 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
## [Unreleased]
+## [5.0.0] - 2018-09-14
+### Added
+ - Stopwatch profiling methods
+ - Attempt to interpret old assembly naming convention when parsing types
+ - Added RegexUtils
+
+### Changed
+ - Significant performance improvements across the board
+
## [4.0.0] - 2018-07-19
### Added
- Added extension method for getting type name without trailing generic info
diff --git a/ICD.Common.Utils/Extensions/MethodInfoExtensions.cs b/ICD.Common.Utils/Extensions/MethodInfoExtensions.cs
index 611b38a..0b19219 100644
--- a/ICD.Common.Utils/Extensions/MethodInfoExtensions.cs
+++ b/ICD.Common.Utils/Extensions/MethodInfoExtensions.cs
@@ -91,10 +91,13 @@ namespace ICD.Common.Utils.Extensions
}
sigBuilder.Append("this ");
}
-#endif
}
else if (secondParam)
+ {
secondParam = false;
+#endif
+ }
+
else
sigBuilder.Append(", ");
diff --git a/ICD.Common.Utils/IcdConsole.cs b/ICD.Common.Utils/IcdConsole.cs
index a6c1a8c..d27d370 100644
--- a/ICD.Common.Utils/IcdConsole.cs
+++ b/ICD.Common.Utils/IcdConsole.cs
@@ -1,9 +1,10 @@
using System;
-using System.Diagnostics;
using System.Linq;
using ICD.Common.Properties;
#if SIMPLSHARP
using Crestron.SimplSharp;
+#else
+using System.Diagnostics;
#endif
namespace ICD.Common.Utils
diff --git a/ICD.Common.Utils/Json/AbstractGenericJsonConverter.cs b/ICD.Common.Utils/Json/AbstractGenericJsonConverter.cs
index a6ea772..0b95a0c 100644
--- a/ICD.Common.Utils/Json/AbstractGenericJsonConverter.cs
+++ b/ICD.Common.Utils/Json/AbstractGenericJsonConverter.cs
@@ -10,10 +10,7 @@ namespace ICD.Common.Utils.Json
/// Creates a new instance of T.
///
///
- protected virtual T Instantiate()
- {
- return ReflectionUtils.CreateInstance();
- }
+ protected abstract T Instantiate();
///
/// Writes the JSON representation of the object.
diff --git a/ICD.Common.Utils/Properties/AssemblyInfo.cs b/ICD.Common.Utils/Properties/AssemblyInfo.cs
index 1db615b..ad9aad0 100644
--- a/ICD.Common.Utils/Properties/AssemblyInfo.cs
+++ b/ICD.Common.Utils/Properties/AssemblyInfo.cs
@@ -4,4 +4,4 @@ using System.Reflection;
[assembly: AssemblyCompany("ICD Systems")]
[assembly: AssemblyProduct("ICD.Common.Utils")]
[assembly: AssemblyCopyright("Copyright © ICD Systems 2018")]
-[assembly: AssemblyVersion("4.0.0.0")]
+[assembly: AssemblyVersion("5.0.0.0")]
diff --git a/ICD.Common.Utils/RecursionUtils.cs b/ICD.Common.Utils/RecursionUtils.cs
index e30d4bf..425c2ee 100644
--- a/ICD.Common.Utils/RecursionUtils.cs
+++ b/ICD.Common.Utils/RecursionUtils.cs
@@ -3,7 +3,6 @@ using System.Collections.Generic;
using System.Linq;
using ICD.Common.Properties;
using ICD.Common.Utils.Collections;
-using ICD.Common.Utils.Extensions;
namespace ICD.Common.Utils
{
diff --git a/ICD.Common.Utils/Services/Scheduler/AbstractScheduledAction.cs b/ICD.Common.Utils/Services/Scheduler/AbstractScheduledAction.cs
index 3cfbd2f..891d06c 100644
--- a/ICD.Common.Utils/Services/Scheduler/AbstractScheduledAction.cs
+++ b/ICD.Common.Utils/Services/Scheduler/AbstractScheduledAction.cs
@@ -1,5 +1,4 @@
using System;
-using ICD.Common.Utils.EventArguments;
using ICD.Common.Utils.Extensions;
namespace ICD.Common.Utils.Services.Scheduler