Rename Encoder types to TData and TEncodedData
Decode empty paths correctly
Redone dynamic enumerations; Fix .NET 4.0 project